7

目前,我正在编写一些基于产品的 CMS 作为我的第一个项目。

这是我的问题。如何向我的产品模型添加其他数据(产品)?

我已将“/admin/products/add”添加到我的 urls.py,但我真的不知道从那里去哪里。我将如何构建我的视图和模板?请记住,我真的不太了解 Python,而且我对 Django 很陌生

如果不使用这个现有的 django 管理界面,我怎么能做到这一切。

4

3 回答 3

7

您需要将您的 URL 连接到 Django create_object 通用视图,并将其传递给“model”(您要创建的模型)或“form_class”(自定义的ModelForm类)。您还可以传递许多其他参数来覆盖默认行为。

最简单情况的示例 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> 标记中并添加提交按钮。最简单的工作模板(默认情况下应该放在“my_products_app/product_form.html”中):

<form action="." method="POST">
  {{ form }}
  <input type="submit" name="submit" value="add">
</form>

请注意,您的 Product 模型必须具有 get_absolute_url 方法,否则您必须将 post_save_redirect 参数传递给视图。否则它不知道保存后重定向到哪里。

于 2008-08-31T15:59:11.473 回答
-1

Django 教程中涵盖了这个主题。

于 2008-08-31T12:31:49.790 回答
-2

按照 Django 教程设置应用程序的“管理”部分。这将允许您修改数据库。

Django 管理员设置

或者,您可以使用适用于您使用的任何数据库类型的标准工具直接连接到数据库。

于 2008-08-31T12:19:14.780 回答