我有一个这样的模型:
class EventTypeCategory(models.Model):
name = models.CharField(max_length=50, verbose_name="Name")
user = models.ForeignKey(User, verbose_name="User")
Message_slug = models.SlugField(blank=True, verbose_name="Message")
def __unicode__(self):
return self.name
在urls.py中:
url(r'^categ/$',
'eventcateg_detail', name='eventcateg_detail'),
在views.py中:
def eventcateg_detail(request,event_categ_id=None, event_categ_slug=None):
我想按模板级别添加/编辑/删除(CRUD)上面定义的值,即name和Message_slug。我没有得到任何提示,如何将url.py与views.py关联,以及应该如何定义eventcateg_detail function.How此函数会将值传递给模板(模板名称将是categ.html)
我是Django的新手:)需要你的帮助
发布于 2012-03-23 12:26:47
您需要允许URL接受参数,以允许您指定要查看的事件类别:
/categ/outdoor-events/
/categ/catered-events/
...
这样做,你可以在你的url方案中使用a named URL pattern:
url(r'^categ/(?P<slug>[-\w]+)/$','eventcateg_detail', name='eventcateg_detail'),
在你看来:
from django.shortcuts import get_object_or_404, render
def eventcateg_detail(request,slug):
return render(request, "categ.html", {
'obj' : get_object_or_404(EventCateg, Message_slug =slug) # You should change Message_slug to just slug
})
在您的模板中:
<h1>{{ obj.name }}</h1>
因此,当用户输入我们上面概述的URL时,它将与我们的URL模式相匹配,并且url的段塞部分(catered-events
)将作为参数传递给我们的视图。
https://stackoverflow.com/questions/9838774
复制相似问题