2011-11-15 9 views
5

Mam pytanie: "Jak mam nazwać aplikacje, widoki, modele, formularze, pola itp?"Widok Django, modele, formularz, nazwa aplikacji

Na przykład mam grę przeglądarkową z zaimplementowaną skrzynką pocztową.

App nie można nazwać skrzynkę więc nazwać to pm_box (jest to dobre?)

Potem trzeba stworzyć model, w którym wszystkie wiadomości są przechowywane. Jaka powinna być nazwa modelu? Wiadomość lub wiadomości? Powinien mieć pole boolowskie, które jest True, jeśli wiadomość została już przeczytana. Czy to pole powinno być nazywane read lub is_read?

Następnie mam widok, który wyświetla listę wiadomości. Czy powinienem nadać mu nazwę: list_messages, message_list, message_list_view lub list_messages_view (jeśli nie określam skrzynki odbiorczej/nadawczej)?

Formularz sprawdzania danych wejściowych nowego komunikatu. Czy formularz powinien mieć nazwę NewMessageForm, MessageWritingForm ..?

Później chcę śledzić znaczniki czasu dla każdego gracza. W tym celu mam model gracza (czy powinien to być gracz)? Z polem OneToOne dla użytkownika i polem OneToOne na Datownik (lub znacznikami czasowymi) z polami: online, last_pm_sent, some_action.

Dzięki za wszystkie odpowiedzi. Przeczytałem już dokumentację do stylu django i programowanie, ale nigdzie nie określono tych rzeczy.

EDYCJA: Nazwa projektu (w pyCharm) to nazwa mojej gry. Jak mam nazwać pierwszą aplikację i gdzie powinienem przechowywać model odtwarzacza (w której aplikacji), który jest również UserProfile.

Odpowiedz

16

Dobra, począwszy od tego, co nazywasz, nie może to być pm_box, spróbuj nazywać dyskretnie, jeśli coś jest słowem kluczowym, spróbuj znaleźć odpowiedni synonim, tutaj PersonalMessage i twój folder widoku będą personal_messages, podczas gdy plik będzie zazwyczaj dobry jak pojedyncze słowo, np. enlist.html, display.html, itd. będą dobre, głównie po tej struktury w Django:

modelu Class Nazwa

Singular, Jeśli mutliple stosować górną obudowę list wielbłąda -> Przykład: osoba, Użytkownik, Temat, StudentSubject, StudentGuardian itp

Form Class Nazwa:

odpowiedniego modelu klasy Obserwowani według formy -> Przykład: PersonForm, UserForm, SubjectForm itp

boolowskie zmienne:

Odpowiednie z is_ lub has_ ​​prefiks -> Przykład: is_present, is_available, is_online, has_parent, itp.

Odwiedzin:

umieścić w folderze mnogiej modelu, ale zamiast górnej użycia list podkreślenia (_) po każdym słowie (w przypadku dwóch liter) nazwę pliku będzie jak nazwa funkcji -> Przykład: Ludzie/index.html, ludzie/detail.html, student_guardians/display_fee.html itp

Choć może nie do końca potrzebny jest nowy model, aby utrzymać 1-do-1 związek, lepsze podejście byłoby dodać więcej pól do bieżącej tabeli. Konwencje datownika może być podobny, last_visited_at, last_played_at itp

Można dać APP nazwę definiując w modelu jako:

class UserProfile(models.Model): 
    pass 
    class Meta: 
     app_label = 'Your Application Name'