Piszę apkę do zarządzania budżetem.

Przy tworzeniu budżetu jest możliwość dodania użytkowników którzy mają do niego dostęp. Każdy kto ma dostęp może dodać "Expense" do danego budżetu.

Sprawdzenie dostępu nie jest problemem ale nie wiem którą metodę najlepiej nadpisać aby to sprawdzić. Sprawdzjąc kod źródłowy klas z których dziedziczy "CreateAPIView" wychodzi mi, że najlepiej gdy nadpiszę metodę "create".

Tu
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#django
#python

Czy nauka Django z poradnika coreya schafera na YT to strzał w stopę? W tutku jest wersja 2.1, a obecnie mamy 4.0.
Różni się to jakoś mega na podstawowym poziomie czy nie ma się co przejmować?
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć, zrobiłem sobie stronę: django + react + rest api z django resta
Komponenty sobie renderuje w template django (hybrid app), no i mam sobie formularz, który wysyłam postem i zawiera on user.id
Jak to zabezpieczyć? Przecież ktoś może zmienić w kodzie js user.id i wysłać za innego użytkownika. Używam sobie session auth, wiec miałem pomysł, żeby zrobić endpoint zwracający user.id, ale sam nie wiem.
#programowanie #django #
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@veracholera: Tak, chcesz mieć single source of truth także backend powinien być zabezpieczony przed manipulacjami ze strony użytkownika, na frontendzie nie zawsze jest to możliwe.

Ale z drugiej strony jeżeli nie przewidujesz użycia tego API z ID innego usera, to po co w ogóle user.id przekazywać? Możesz je zwyczajnie z contextu wyciągać.
Np. widok edycji profilu. Każdy użytkownik będize edytował tylko i wyłącznie swój profil
  • Odpowiedz
@veracholera: Jak masz oauth i token JWT to mozesz przekazac z backendu middlewarem ten token i sprawdzic czy jest walidny oraz kto jest uzytkownikiem, a user.id w ogole nie podawac z frontu i go nie akceptowac. Tym sposobem masz pewnosc ze tylko zalogowany user bedzie cos tam edytowal.
  • Odpowiedz
@Bulldogjob:

potężny portal społecznościowy. Co jednak ważne, ze względu na swoją architekturę i rzeczony wzorzec projektowy MVT Przy odpowiedniej konfiguracji Django będzie wydajne i skalowalne w każdym projekcie


xDDDDDDDDDDDD

zeby nie bylo ze robie beke bez sensu, skalowalnosc takiego projektu nie robi sie w django i na pewno skalowalność osiągnięta "na django" nie jest wynikiem MVT którego wogóle się nie używa
  • Odpowiedz
zawsze warto zacząć od dokumentacji :)


@Henryhenry: Nie zgodzę się. Przeważnie dokumentacja nie tłumaczy konceptów i nie podaje przykładów użycia, tylko jest suchą listą funkcji, przyjmowanych parametrów i zwracanych wartości. Pod tym względem większość dokumentacji nie nadaje się do nauki.

Django jest tutaj chlubnym wyjątkiem, bo ich dokumentacja jest rewelacyjna i faktycznie warto od niej zacząć, a konkretnie od tutoriala.
  • Odpowiedz
@Lunatik: moze inaczje skonstruowac mozna idk ale w wielu firmach normą sa podwyzki nawet kilka razy w roku - wszsytko z gestii pracodawcy.
imo warto wiedziec czy w firmie trzeba chodzic po podwyzki czy same przychodza
  • Odpowiedz
Bo z pustym słownikiem formularz zweryfikuje poprawność danych i rzuci błędy, a z None - nie, bo traktuje to jako formularz ktory jeszcze danych nie otrzymal

tak w duzym skrocie
zerknij do kodu zrodlowego lub przetestuj oba podejscia
  • Odpowiedz
Korzystam sobie z boilerplate do tworzenia projektów. W zdefiniowanym przez twórców modelu User poza polem ID jest też pole token (uuid4, unique=True) i nie bardzo rozumiem w jakim celu. Szukam też odpowiedzi na pytanie - czy jest ok aby pole ID użytkownika zostawić jako domyślne skoro potrzebuję potrzebuję wysyłać identyfikatory użytkowników "na zewnątrz" czy lepiej nadpisać ID na uuid4? Wyczytałem, że uuid spowalnia bazę a pokazywanie ID jako integer jest niebezpieczne. To
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Możecie polecić jakąś bibliotekę do rejestracji, logowania itp w #django DRF?. Próbowałem korzystać z djrestauth ale
domyślny LoginSerializer wymaga podania "username", "email" i "password" a jak chcę aby podawać tylko "email" i "password" a username nie musiałbyć "unique" tzn kilku użytkowników może mieć ten sam username.

Całodzienna walka z tym aby przy rejestracji wymagał "username", "email", "password1", "password2" ale przy logowaniu tylko "email", "password" i kolejne wzajemnie wykluczające się
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

japrdl. kto pisal ten "artykul"? brzmi jak jak automat onetu do pisania clickbajtow. tutaj fragment "podsumowania" tego ulepu (pkt 3 to absolutny mistrz):

Flask vs Django. Podsumowanie
1. Python Flask Django z roku na rok zyskują na popularności.
2. Społeczności Python Django Flask rozwijają frameworki, które znacząco przyspieszają prace programistyczne, web development.
3. Porównania frameworków napisanych w Pythonie (np. Django vs Flask) są dość często dokonywane.
vogello - japrdl. kto pisal ten "artykul"? brzmi jak jak automat onetu do pisania cli...

źródło: comment_1638365704FB2Hj4CLq2cZAIwPJsLGhc.jpg

Pobierz
  • Odpowiedz
Mam model "Comment" oraz "Word" i "Category". Jak mam stworzyć relację aby "Comment" móc wykorzystywać zarówno dla "Word" i "Category"? Gdybym stworzył oddzielne modele komentarzy to mógłbym stworzyć zwykłą relację OneToMany. Czy sposób pokazany w kodzie będzie ok? Teoretycznie ma prawo działać ale za każdym razem gdy pojawi mi się nowy model dla którego chcę dodawać komentarze będzie konieczne dodawanie nowego pola w "Comment".

PASTEBIN

#django
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

po nauce pythona jakiś czas temu przeszedłem do nauki django, czego się jeszcze mogę przy okazji uczyć żeby nie siedzieć cały czas w jednej rzeczy?
django-rest? docker? a może reacta? tak żeby nie poświęcać całego czasu jednej rzeczy
gita znam, htmle i te inne rzeczy tez
#django #programowanie #webdev #python
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@veracholera: a to nie jest tak, że będąc we wszystkim specem, jesteś w niczym specem? też trochę poznałem technologii, ale w sumie jakbym teraz miał iść na rozmowę o pracę i by mnie o to zapytali, to byłbym 'noga'.
  • Odpowiedz
Możesz stworzyć sobie funkcję make_article_form która bierze choices i dynamicznie tworzy formularz.

def make_article_form(choices):
....class ArticleForm(forms.Form):
....
....return ArticleForm
  • Odpowiedz
Potrzebuję zrobić taką tabelę i przesłać informacje do funkcji w #django - które kwadraty zostały zaznaczone.
Jak to najlepiej zrobić?
Myślałem op dwóch rozwiązaniach:
1. formularz z 42 polami typu checkbox ( forms.BooleanField(required=False) )
2. Zrobić tabelę ręcznie w html z tr td i później javascriptem sprawdzić, które pola zostały zaznaczone i wysłać json-em do django
Co myślicie, może macie lepsze pomysły ?
scorpio18k - Potrzebuję zrobić taką tabelę i przesłać informacje do funkcji w #django...

źródło: comment_1636919091QC8TY58sxxQfYv5jGeBK57.jpg

Pobierz
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach