在Django Framework中配置静态站点

时间:2014-05-19 14:08:21

标签: python django

我设计了一个静态网站。但我需要在3个月后将动态功能纳入其中。所以,我决定在上传前用django框架配置它。但是我知道,我需要在urls.py中配置所有网址。有没有其他配置静态站点的方法?

这可能听起来很愚蠢,但我想要听到SO,因为我需要配置大量的URL。

1 个答案:

答案 0 :(得分:0)

您可以使用flatpages application。它允许您根据需要生成平面(或静态,但术语静态通常用于指代Django世界中的CSS,JS和图像文件。)通过管理页面。

您只需设置一个URL前缀(不是必需的,您可以使用 catchall 方法)并在管理中创建每个页面(允许使用HTML)。当您拥有动态网页时,urls.py应该是:

urlpatterns = ('',
    (r'^page1$', 'view1'),
    (r'^page2$', 'view2'),
)
# Other URL are redirect to flatpage app
urlpatterns += patterns('django.contrib.flatpages.views',
    (r'^(?P<url>.*/)$', 'flatpage'),
)

如果平面不存在,应用程序将返回404 HTTP错误。您还可以通过创建文件flatpages/default.html

来自定义基本模板,如文档中所述
<!DOCTYPE html>
<html>
<head>
<title>{{ flatpage.title }}</title>
</head>
<body>
   <nav>My super menu</nav>
   <section>
       {{ flatpage.content }}
   </section>
   <footer>
       &copy; My name - 2014
   </footer>
</body>
</html>

它会强制您将所有平面页面放入数据库中,但毕竟更改URL和内容会更容易。