2016-04-13 4 views
0

Я хочу заказать модель, основанную на поле его внешнего ключа. Я нахожу результаты при поиске в Google ORM, но я до этого, объявляя метакласс. Они показывают такие вещи, какопределить заказ модели по умолчанию для своего внешнего ключа Django

units = Unit.objecwhere to lookts.filter(color='red').order_by('location__label') 

, но я хочу сделать заказ на декларации автоматически:

class Office(models.Model): 
    objects = OfficeManager() 
    id = models.IntegerField(db_column='office_id', primary_key=True) 
    office = models.CharField(max_length=20) 
    description = models.CharField(max_length=255) 

    class Meta: 
     db_table = 'tblOffices' 
     ordering = ('office',) 

    def __str__(self): 
     return self.office 


class OfficeCity(models.Model): 
    office = models.ForeignKey(Office, db_column='tblOffices') 
    name = models.CharField(max_length=255) 

    class Meta: 
     db_table = 'cities' 
     ordering = ('office.description') 

ли выше фрагмент кода правильно заказать эти города по описанию поля FK? Спасибо

Прилагается демка ученика ученика джанго, «поглаживающего его менее чем за 15 секунд», в конце цитаты.

enter image description here

enter image description here

Обратите внимание, что во второй картине, Джанго обучающийся может возникнуть соблазн нажать на https://docs.djangoproject.com/en/1.9/ref/models/fields/ и прочитать все 26 страниц (из того, если вы должны были напечатать), проведя несколько часы переучивания полезных вещей, которые они уже прочитали, но, конечно, не находят ответа на вопрос, «отправляя его в течение 15 секунд». Это приводит к тому, что, возможно, человек, который искал ее в течение 15 секунд, уже знал , где посмотреть и что искать, поэтому им понадобилось 15 секунд, но для ученика потребуется несколько часов ответ. Если ученик не реализует эту функцию, а просто любопытно, это может показаться Q &. Форум является подходящим местом для поиска ответов (часть A Q & A), задавая вопросы (часть Q). Давайте оставим эго перед ребятами-мозговыми хирургами, мы понимаем, что если вы делаете это в течение 30 лет, вы эксперт, те из нас, кто достиг вашего возраста, это будет экспертом, когда нам тоже будет 60 лет. Надеюсь, мы останемся смиренными, однако ...

+1

Вы всегда можете клонировать проект, указывать на свою базу данных и тестировать свои собственные данные. Опираясь на Q & A сайт для функциональности вашего кода, это идея BAD ... просто говорю. – cdvv7788

+0

Я не собираюсь реализовывать это, вопрос полезен, и ответ нелегко найти в Интернете ... просто говорю. – codyc4321

+0

Я действительно не понимаю, почему вы не можете проверить его локально. Все, что вам нужно, - это 2 офиса и 2 офисных города. Вы можете ввести их через администратора или через скрипт (используя заводы). –

ответ

1
class Meta: 
    ordering = ('office__description',) 
+1

Можете ли вы объяснить, как это решает проблему? – pczeus

+1

«Я хочу заказать модель, основанную на поле его внешнего ключа» => мой ответ - правильный синтаксис для этого. –

+0

pczues, после педантичного обсуждения с культами, Франсуа решил кратко ответить на мой вопрос полностью в двух строках. Поскольку временное значение «15 секунд» является темой здесь, я просто набрал его ответ, и он взял меня, вот и вот, 15 секунд. Это решает проблему вопроса, который я задал, но, похоже, не решает г-н. Смущение Франсуа относительно того, почему я не смог проверить это в оболочке, не получив одобрения от одного из VP на работе, что действительно является более серьезной проблемой здесь. Лечение рака> понимание моей локальной конфигурации проекта> прекращение голода в мире в этом порядке. – codyc4321

Смежные вопросы