1

如何在 get 方法中发送标题值?

getBooksDetails.html

    <a href="getBookDetails" style="text-decoration: none">
    <h4 class="overflow title" title="{{ book.title.upper }}">{{ book.title.upper }}</h4>
    </a>

网址.py

urlpatterns = patterns('',
    (r'^index', 'views.index'),
    (r'getBookDetails', 'views.getBookDetails'),
)

我试图用这种方法打印标题的价值,只是为了确认价值是否到来。有人可以帮助我,如何在 GET 方法中发送和获取值。

视图.py

def getBookDetails(request):
    print request.GET // how to get title value here from get method
    return render_to_response('getBookDetails.html')
4

2 回答 2

1

一种更好、对搜索引擎更友好的方法可能是在您的 URL中使用关键字参数,并在您的 book 对象上添加一个 slug

getBooksDetails.html

<a href="getBookDetails" style="text-decoration: none">
<a href="{% url 'book' book.slug %}>{{ book.title.upper }}</a>
</a>

Book 模型上的 slug 属性

from django.utils.text import slugify

class Book(Model):
    ...
    slug = slugify(self.title)
    ...

网址.py

urlpatterns = patterns('',
                       (r'^index', 'views.index'),
                       (r'getBookDetails/(?P<slug>\w+/', 'views.getBookDetails'),
)

如果您使用的是基于类的视图,则可以使用 **kwargs 访问视图中的 title-slug,如果您使用的slug=None是基于函数的视图,则可以添加到视图定义中。

于 2013-07-17T06:22:25.450 回答
1

您可以在以下位置发送数据URL

例如说我们有一个这样的网址:

http://localhost:8000/hi?id="bye"

您可以通过Django两种方式获取数据:

request.GET['id']

或者

request.GET.get('id', 'default value')
于 2013-07-17T05:28:24.857 回答