2017-05-11 100 views
-2

我在我的Django应用程序中从数据库中获取一些信息(页面名称,标题等等)中有一些半静态页面。如何从基于url的数据库中获取数据? Django

目前,对于每个页面,我需要在urls.py中创建一个单独的url并传递page_name。

from django.conf.urls import url 
from . import views 

urlpatterns = [ 
    url(r'second', views.page, {'page_name': 'second'}), 
    url(r'first', views.page, {'page_name': 'first'}) 
] 

有没有一种方法可以让我得到的URL,而不是PAGE_NAME并用它来决定从数据库中获取什么样的信息?我正在尝试使用page_name作为模型字段。

url(r'^(?P<page_name>.*/)', views.page) 

所以据我所知,我需要通过<page_name>到视图。有没有办法做到这一点?

+0

是的,当然有。这是Django工作的基本方式,本教程将对此进行全面介绍。 –

回答

0

是的,你可以&应该使用

url(r'^(?P<page_name>.*/)', views.page) 

虽然,这应该是在你urlpatterns列表的最后一个元素,因为它会在网址中获取基本的一切。

您的视图应该接受参数作为第二个参数。例如

# views.py 
def page(request, page_name): 
    # use the page_name argument as you like 
相关问题