Страница администратора Django - добавление новых позиций в модуль - PullRequest
0 голосов
/ 04 декабря 2011

Я планирую создать свой первый проект в базе данных Django - shop, но у меня есть некоторые опасения, так как я читаю некоторые учебные пособия.

Мне нравится концепция страницы администратора, но у меня есть вопрос:

При добавлении магазина я хочу, чтобы пользователь мог добавлять некоторые позиции товара, связанные с ним, например, - item -> price, но их количество не всегда будет одинаковым.Как решить это в админке?и что будет лучшим решением в базе данных для него?Одна таблица для магазинов, а другая с продуктами, каждая из которых связана с определенным магазином?
(Пример: список будет выглядеть так: у пользователя есть форма добавления магазина, а для добавления продуктов - «+». Когдаон щелкает по нему, появляется новая пара входов продукта -> цена и т. д.)

1 Ответ

1 голос
/ 04 декабря 2011

В Django вы определяете структуру базы данных через ваши Модели.Итак, как вы говорите, у вас будет одна модель для Магазина, а другая - для Продукта, а у Продукта будет поле ForeignKey для Магазина.

То, что вы хотите, возможно в админке Django.Взгляните на InlineModelAdmin в документации.У вас была бы страница администратора для Магазина со встроенным администратором для Продуктов.

Я настоятельно рекомендую вам установить Grapelli , который является "джазовой обложкой для интерфейса администратора Django" и делает встроенных администраторовработать лучше, предоставляя javascript, который позволяет добавлять дополнительные строки продукта, нажимая кнопку +, как вам нужно.

...