如何使用 Django 平面页面拥有类似 Wordpress 的自定义字段?

发布于 2024-07-18 06:14:26 字数 143 浏览 7 评论 0原文

使 WordPress 等 CMS 强大的功能之一是能够添加可在模板中使用的其他字段。 WordPress 有所谓的自定义字段。 有没有办法使用 Django 的平面页面来做到这一点? 如果没有,是否有另一个 Django 应用程序允许创建页面并可选择添加其他字段?

One of the features that makes a CMS like WordPress powerful is the ability to add additional fields that may be used in the template. WordPress has what it calls custom fields. Is there a way to do that using Django's flat pages? If not, is there another Django app that will allow page creation with the option of adding additional fields?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

§对你不离不弃 2024-07-25 06:14:26

您可以推出自己的 Flatpages 应用程序版本; 看一下源码,其实很简单。

听起来您可以使用两个模型来完成您想要的任务:一个代表页面,另一个代表自定义字段。 用外键和一些内联管理功能将它们绑在一起,你就应该准备好了。 要访问模板中的字段,请确保 Page 类实现某种查找功能,例如 __getitem__

You could roll your own version of the flatpages app; take a look at the source code, it's really simple.

It sounds like you could accomplish what you want with two models: one to represent the Pages, and another to represent CustomFields. Tie them together with foreign keys and some inline admin goodness, and you should be set. To access the fields in your template, make sure the Page class implements some kind of lookup function, like __getitem__.

芯好空 2024-07-25 06:14:26

如果您不需要查询字段,那么最简单的方法是添加一个字段,以腌制字典或其他格式保存所有自定义数据。

JSONField 是以 JSON 格式存储自定义对象的示例。

If you don't need to query on the fields then the easiest way is to add a field that holds all the custom data either in a pickled dictionary or some other format.

JSONField is an example of storing custom objects in JSON format.

虫児飞 2024-07-25 06:14:26

Flatpages 基本上只是静态 HTML 页面,它们通过漂亮的管理界面存储在数据库中。

如果您需要更复杂的东西,那么是时候自己动手了。

Flatpages are basically just static HTML pages that are stored in your database with a pretty admin interface.

If you need something more complex, it is time to roll your own.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文