【问题标题】:Edit site pages through model fields from Django admin通过 Django admin 中的模型字段编辑网站页面
【发布时间】:2016-12-19 00:33:00
【问题描述】:

有没有办法通过 model.py 中定义的字段在 Django Admin 中编辑网站页面(关于、服务、联系人等)?例如,在 WP 中,我会有一组使用 ACF 插件的自定义字段,称为“about_image”和“about_text”,然后这些字段将输出到所需的页面模板中。

图像字段。

<?php $image = get_field('about_image');

if( !empty($image) ): ?>

    <img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" />

<?php endif; ?>

文本字段。

<h2><?php the_field('about_text'); ?></h2>

这些字段然后可以通过每个页面下的管理员、关于、服务等进行编辑。客户端编辑内容超级容易...

如果这超出了 Django 的范围,那没关系,我会尝试 Django-CMS,但我只是喜欢纯 Django 的简单性。如果之前已经回答过,我很抱歉,我确实花了一些时间寻找解决方案......

谢谢

【问题讨论】:

    标签: django django-models django-admin


    【解决方案1】:

    我想你正在寻找django flatpages

    Django 带有一个可选的“平面页面”应用程序。它让你 在数据库中存储简单的“平面”HTML 内容并处理 通过 Django 的管理界面和 Python API 为您进行管理。

    平面页面是一个带有 URL、标题和内容的简单对象。用它 对于一次性的特殊情况页面,例如“关于”或“隐私政策” 页面,您想要存储在数据库中但您不想存储的页面 想要开发一个自定义的 Django 应用程序。

    它不如 wordpress 强大,但 django 也不像 wordpress 那样可怕的过时软件。

    【讨论】:

    • 您好,欢迎您的回复!我已经在 Django 文档上测试了 Django flatpages,它的特性非常好,但我希望能够更灵活地为每页添加多个自定义字段。无论如何,我会标记为答案,谢谢。我同意 WP 相当臃肿,但它确实完成了工作!
    • 好吧,我确实说过它不如 wordpress 强大,但它适用于大多数用途。但是使用 django 编写自己的 CMS/博客非常容易,以至于大多数 django 新手都将其作为学习练习
    • 我见过一些用 Django 完成的非常令人印象深刻的网站,包括这个 - athfieldarchitects.co.nz。很想知道他们是怎么做到的!我同意 Django 似乎很容易快速建立一个 CMS 和博客,它很好地被 MVT 困在代码中,而不是把所有东西都隐藏在 WP 核心或插件中。
    猜你喜欢
    • 2014-07-10
    • 2016-12-11
    • 1970-01-01
    • 2018-01-10
    • 2015-05-21
    • 1970-01-01
    • 2021-01-24
    • 2018-02-17
    • 2019-12-04
    相关资源
    最近更新 更多