В настоящее время я пишу немного о CMS на основе продукта в качестве своего первого проекта.
Вот мой вопрос. Как я могу добавить дополнительные данные (продукты) в мою модель продукта?
Я добавил '/ admin / products / add' в свой urls.py, но я действительно не знаю, что делать дальше. Как мне построить и свое представление, и свой шаблон? Имейте в виду, что я не так уж много знаю Python, и я новичок в Django.
Как я могу сделать все это без использования существующего интерфейса администратора django.






Следуйте руководству по Django, чтобы настроить «административную» часть приложения. Это позволит вам изменить вашу базу данных.
Настройка администратора Django
В качестве альтернативы вы можете просто подключиться напрямую к базе данных, используя стандартные инструменты для любого типа базы данных, который вы используете.
Эта тема рассматривается в Руководства по Django.
Вам нужно связать свой URL-адрес с Django общий вид create_object и передать ему либо «model» (модель, которую вы хотите создать), либо «form_class» (настраиваемый класс МодельФорма). Существует ряд другие аргументы, которые вы также можете передать, чтобы переопределить поведение по умолчанию.
Пример URLconf для простейшего случая:
from django.conf.urls.defaults import *
from django.views.generic.create_update import create_object
from my_products_app.models import Product
urlpatterns = patterns('',
url(r'^admin/products/add/$', create_object, {'model': Product}))
Ваш шаблон получит контекстную переменную "form", которую вам просто нужно обернуть в
<form> tag and add a submit button. The simplest working template (by default should go in "my_products_app/product_form.html"):<form action = "." method = "POST">
{{ form }}
<input type = "submit" name = "submit" value = "add">
</form>
<p>Note that your Product model must have a get_absolute_url method, or else you must pass in the post_save_redirect parameter to the view. Otherwise it won't know where to redirect to after save.</p>
</form>
Название вашего вопроса может вводить в заблуждение; модель обычно используется вместо класса модели. Я думаю, что «Как мне создать новый экземпляр модели с помощью представлений» - лучший заголовок.