Django Pinax,扩展打包应用程序
我想在一个小项目中使用Pinax,但我有点困惑,因为我不知道是否可以扩展或改变它提供的应用程序的功能和行为。
有没有关于如何扩展这些内置应用程序行为的文档呢?
比如说,在注册应用程序中,我想添加一些自定义字段,但我找不到合适的文档来实现这个功能……(主要是那些需要数据库更改的部分)
谢谢!
1 个回答
1
是的,你可以扩展内置应用的功能。如果你使用的是Pinax的基本设置,并且有用户账户和个人资料,你需要在apps/profiles/models.py文件中添加你想要的额外字段。关于字段类型的列表,可以查看这里:https://docs.djangoproject.com/en/1.3/ref/models/fields/
当你运行manage.py syncdb
时,这样做会为你创建必要的数据库字段。不过,如果你已经同步过数据库,你就需要手动添加数据库列。如果你在那个表里没有重要的数据,你可以直接删除那个表,它会被重新创建。Django在创建数据库表后不会修改它们,即使你改变了模型。
你还需要修改注册表单,以包含这些新字段,并将你的urls.py指向你创建的新注册表单。把表单从site-packages/pinax目录复制到你的项目中,不要直接修改它们。
如果你还没看过,建议你查看Django的教程:https://docs.djangoproject.com/en/1.3/intro/tutorial01/
这个教程会让你对Django应用的构成和不同部分如何互动有个大致的了解,这样你就能更好地根据自己的需求定制Pinax。确保你了解models.py
、urls.py
、views.py
和模板的作用。