Змея / Говнокод #18504 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
class РазделФорума(models.Model):
    def __str__(собств):
        return собств.название_раздела

    название_раздела = models.CharField(max_length=100)
    описание_раздела = models.CharField(max_length=250,
                                        default='',
                                        blank=True)


class ТемаФорума(models.Model):
    def __str__(собств):
        return собств.заголовок

    заголовок = models.CharField(max_length=150)
    шапка_темы = models.TextField()
    количество_сообщений = models.IntegerField(blank=True, default=0)
    время_создания = models.DateTimeField(auto_now_add=True)
    время_последнего_изменения = models.DateTimeField(blank=True, null=True)
    автор = models.ForeignKey(Персонаж)
    раздел = models.ForeignKey(РазделФорума)


class СообщениеФорума(models.Model):
    def __str__(собств):
        return собств.текст_сообщения[:70] + "..."

    текст_сообщения = models.TextField()
    время_создания = models.DateTimeField(auto_now_add=True)
    автор = models.ForeignKey(Персонаж)
    название_темы = models.ForeignKey(ТемаФорума)

Django модели. Спизжено отсюда - http://djbook.ru/forum/topic/3524/#post-23189

Запостил: alexscrat alexscrat, (Updated )

Комментарии (19) RSS

  • Ну а серьезно, где запрет использования не-юникода?
    Ответить
    • эммм... Здравый смысл. Не, ну нет на самом деле. Кроме того, есть даже такой шедевр, как 1С, в котором вообще это предусмотрено, но здесь мне было бы как минимум влом прыгать между раскладками. Да и с кровоточащими глазами писать код неудобно
      Ответить
    • Поискал, кстати есть. Краткая выжимка здесь - http://pep8.ru/doc/pep8/

      Вот оно -

      Кодировки (PEP 263)

      Код ядра python всегда должен использовать ASCII или Latin-1 кодировку (также известную как ISO-8859-1). Начиная с версии python 3.0, предпочтительной является кодировка UTF-8 (смотрите PEP 3120).

      Files using ASCII (or UTF-8, for Python 3.0) should not have a coding cookie. Используйте Latin-1 (или UTF-8), только если это необходимо, чтобы указать в комментарии или строке документации имя автора, содержащее в себе символ из Latin-1. В противном случае предпочтительнее использовать escape-символы \x, \u или \U для не-ASCII символов в строках.

      Начиная с версии python 3.0 в стандартной библиотеке действует следующая политика (смотрите PEP 3131): все идентификаторы обязаны содержать только ASCII символы, и означать английские слова везде, где это возможно (во многих случаях используются сокращения или неанглийские технические термины). Кроме того, строки и комментарии тоже должны содержать лишь ASCII символы. Исключения составляют: (а) test case, тестирующий не-ASCII особенности программы, и (б) имена авторов. Авторы, буквы в именах которых не из латинского алфавита, должны транслитерировать свои имена в латиницу.

      Проектам с открытым кодом для широкой аудитории также рекомендуется использовать это соглашение.
      Ответить
      • А не для широкой? Язык коментов - дело автора, а вот идентификаторы обычно делают на инглише, но аргументов за я не видел.
        Ответить
        • > я не видел
          "Влом прыгать между раскладками", как минимум.

          Ну и у чуваков из других стран возникнут проблемы (но это важно только для опенсурса и контор, которые работают с заграничными коллегами).

          В остальном, в общем-то, всё ок. А во всякой бухгалтерии даже термины предметной области легче описываются без ёбли с их переводом.
          Ответить
          • Я не про бухов, а про нормальное программирование.
            Ответить
            • А бухгалтерия что, ненормальное приложение программирования?
              Ответить
                  • Ты про что сейчас вообще? Если про апи на русском вроде СУММА(), так это для бухов пишется.
                    Ответить
                    • Гнилушка ты, отрок. Народ тебя принимает как брата своего, а ты кляузы творишь изменническия, опускающе опускаешь посты и минусуешь комменты... Вон, и кучу уже опустошил. Грядёт возмездие!
                      Ответить
        • Вот нужна тебе будет полезная либа какая-нибудь для своих нужд, найдешь по советам товарищей ссыль в интернете, а ее написал веселый китаец и использовал он идентификаторы на китайском и ни черта ты не поймешь. Придется писать свою заново или тратить кучу времени на разбор найденной. В любом случае затраты на собственную разработку возрастут.
          Ответить
          • Или я не найду ее, или сразу брошу. Алсо, насколько это ебет китайца?
            Ответить
  • Или я дурак, или все намного проще.
    Django по-умолчанию сопоставляет имена полей класса модели и имена полей таблицы. Просто таблица, походу, была с русскоязычными именами полей, а автор поленился поискать как задать нужное имя поля явно.
    Ответить
      • После ПолеСоСписком1_Changed я перестал удивляться таким мелочам...
        Ответить

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8