2010-08-04 30 views
5

Tôi đã tìm kiếm hàng giờ để thử và tìm ra điều này, và có vẻ như chưa ai đưa ra một ví dụ trực tuyến - tôi vừa tạo một đối tượng xem nguồn cấp dữ liệu rango Django 1.2 và đính kèm nó vào một url. Khi tôi truy cập url, mọi thứ hoạt động tốt, vì vậy tôi biết việc triển khai lớp cấp dữ liệu của tôi là OK.Làm cách nào để đảo ngược url nguồn cấp dữ liệu django?

Sự cố là, tôi không thể tìm ra cách liên kết đến url trong mẫu của mình. Tôi có thể chỉ cứng mã hóa nó, nhưng tôi nhiều thà sử dụng {% url%}

Tôi đã thử đi qua đường dẫn đầy đủ như sau:

{% url app_name.lib.feeds.LatestPosts blog_name=name %} 

Và tôi nhận được gì. Tôi đã tìm kiếm và có vẻ như mọi người khác có một giải pháp rõ ràng đến mức nó không đáng để đăng tải trực tuyến. Tôi đã thức quá lâu chưa?

Đây là mẫu url có liên quan:

from app.lib.feeds import LatestPosts 

urlpatterns = patterns('app.blog.views', 
    (r'^rss/(?P<blog_name>[A-Za-z0-9]+)/$', LatestPosts()), 
    #snip... 
) 

Nhờ sự giúp đỡ của bạn.

+0

Giao diện của url của bạn trông như thế nào? –

+0

được cập nhật để thêm urlpatterns, – pivotal

Trả lời

6

Bạn có thể name your url pattern, đòi hỏi việc sử dụng các chức năng url helper:

from django.conf.urls.defaults import url, patterns 

urlpatterns = patterns('app.blog.views', 
    url(r'^rss/(?P<blog_name>[A-Za-z0-9]+)/$', LatestPosts(), name='latest-posts'), 
    #snip... 
) 

Sau đó, bạn chỉ có thể sử dụng {% url latest-posts blog_name="myblog" %} trong mẫu của bạn.

+1

Bạn không nên đưa đối số blog_name vào thẻ url? –

+0

Aww crap Tôi đoán tôi đã lên một chút quá muộn. Tôi đã thử đặt tên cho nó, nhưng không thành công trên hàm trợ giúp url. Với việc bổ sung các tham số, công trình này. Cảm ơn bạn! – pivotal

+0

@Mark van Lent: Bạn nói đúng, tôi đã cập nhật câu trả lời. –

Các vấn đề liên quan