如何在get方法中发送标题值?
<a href="getBookDetails" style="text-decoration: none">
<h4 class="overflow title" title="{{ book.title.upper }}">{{ book.title.upper }}</h4>
</a>
urlpatterns = patterns('',
(r'^index', 'views.index'),
(r'getBookDetails', 'views.getBookDetails'),
)
我试图在这种方法中打印标题值只是为了确认价值是否来临。有人可以帮助我,如何在GET方法中发送和获取值。
def getBookDetails(request):
print request.GET // how to get title value here from get method
return render_to_response('getBookDetails.html')
答案 0 :(得分:1)
您可以在URL
:
例如说我们有这样的网址:
http://localhost:8000/hi?id="bye"
您可以通过两种方式获取Django
中的数据:
request.GET['id']
或
request.GET.get('id', 'default value')
答案 1 :(得分:1)
更好,更适合搜索引擎的方式可能是在您的网址中使用keyword arguments,并拥有slug on your book object。
<强> getBooksDetails.html 强>
<a href="getBookDetails" style="text-decoration: none">
<a href="{% url 'book' book.slug %}>{{ book.title.upper }}</a>
</a>
预订模型slug属性
from django.utils.text import slugify
class Book(Model):
...
slug = slugify(self.title)
...
<强> urls.py 强>
urlpatterns = patterns('',
(r'^index', 'views.index'),
(r'getBookDetails/(?P<slug>\w+/', 'views.getBookDetails'),
)
如果您正在使用基于类的视图,则可以使用** kwargs访问视图中的title-slug,或者如果您使用的是基于函数的视图,则可以通过将slug=None
添加到视图定义中。