Django - 向MySQL数据库添加行

时间:2012-07-08 21:13:21

标签: mysql django django-views

所以我已经有一个数据库设置,其中包含几列和几行已插入。我试图创建一个视图,您只需将信息输入表单并按提交,然后一行将是使用您输入的信息添加到MySQL数据库中。

我相信你可以通过管理员这样做,但我想尝试没有管理员,我不确定这是否可行?我现在一直在使用MySQL命令行添加行..

3 个答案:

答案 0 :(得分:12)

这是可能的,这是数据驱动网站的构建块。您可以使用Daniel建议的ModelForm(它们提供免费的内置验证和HTML标记),以便轻松地将模型映射到前端表单。首先从django教程或文档开始可能是有益的。

在最基本的情况下,您所要做的就是实例化您的模型

new_entry = YourModel(name='me', age='222', about='stackoverflow')

然后保存

new_entry.save()

这会将其添加为数据库的新行。

https://docs.djangoproject.com/en/dev/topics/db/models/

答案 1 :(得分:1)

为什么不可能?

您可能需要modelform(但请先参阅general form introduction)。

答案 2 :(得分:0)

试试这个通用视图示例:http://postneo.com/2005/08/17/django-generic-views-crud(假设名为Task的模型)

使用通用视图,您可以免费获得插入,更新和删除,而无需任何实际工作。尝试一下,让我知道你的想法。

from django.conf.urls.defaults import *

info_dict = {
    'app_label': 'tasks',
    'module_name': 'tasks',
}

urlpatterns = patterns('',
    (r'^tasks/create/?$', 'django.views.generic.create_update.create_object', info_dict ),
    (r'^tasks/update/(?P<object_id>\d+)/?$', 'django.views.generic.create_update.update_object', info_dict),
    (r'^tasks/delete/(?P<object_id>\d+)/?$', 'django.views.generic.create_update.delete_object', info_dict ),
)

Django文档:https://docs.djangoproject.com/en/1.2/ref/generic-views/#create-update-delete-generic-views