如何使用django在网站上存储静态文本

时间:2012-09-24 00:43:57

标签: python django django-templates django-views

我是django的新手,我认为这是一个非常基本的问题。

让我说我有这个主题:

enter image description here

我已经创建了一个项目,所以我知道如何为动态内容构建模型,将它们传递给视图和管理面板等,但是:

问题:在上图中我标记了3个包含文字的容器。整个网站上只有这个文本的一个实例,并且它不可重复。如果我为自己开发,我只会硬编码,但如果我为客户开发,需要能够使用管理面板编辑这些字段呢?

我是否应该为整个网站为这些类型的容器创建一个包含多个(比如说20个)字段的单独类,在视图中传递该类(并使用[:1]进行过滤)以在模板?

这是我想出的唯一一件事。虽然它会起作用,但我认为这是一个糟糕的解决方案。

2 个答案:

答案 0 :(得分:4)

我要做的是编写一个模型,其中包含要插入的blurb的TextField和用于标识它的CharField,以及一个从数据库中读取blurb的custom template tag你传递给它的论据。

class Blurb(models.Model):
  ident = models.CharField(..., db_index=True)
  blurb = models.TextField(...)

PK  ident  text
1   main   Hey! Do you like this template? This...

{% load blurb %}
 ...
{% blurb main %}

答案 1 :(得分:2)

你可以拥有一个带有选择字段的模型,其中包含模型中文本的描述符。

类似的东西:

class SomeText(models.Model):
    position = models.CharField(max_length=120, choices=POSITION_DESCRIPTORS)
    text = models.TextField()