2013-06-19 56 views
5

Khi tôi cố gắng sử dụng liên kết trong mẫu Django của tôi từ /appname/index/ để đến /appname/detail/### Tôi thay vì đến /appname/index/detail/### mà không phải là những gì tôi đang cố gắng để ứng dụng của tôi có thể ' t tìm thấy nó trong urlconf của khóa học.cách sử dụng thuộc tính href trong các mẫu django

Đầu tiên dòng urls.py cho trang chi tiết

url(r'detail/(?P<jobID>\d+)/$', 'appname.views.detail') 

Ngoài ra, rễ URLconf

urlpatterns = patterns('', 
    url(r'^appname/', include('appname.urls')), 
    url(r'^admin/', include(admin.site.urls)), 
) 

Tiếp template cố gắng để đạt được điều đó

{% for job in jobList %} 
    <a href="detail/{{ job.id }}/">{{ job.name }}</a> 

tôi m không chắc chắn những gì khác có thể được áp dụng thông tin, chỉ cần hỏi nếu bạn muốn xem cái gì khác. Tôi cũng đã thử:

<a href="{% url 'appname.views.detail' %}/{{ job.id }}">{{ job.name }}</a> 

Nhưng điều đó cũng không có tác dụng. Cảm ơn bạn trước vì đã giúp đỡ.

+0

cách xác định gốc ulrconf? thêm tiền tố URL vào '/ detail ...' – karthikr

+0

thêm url url gốc – avorum

+0

sau đó bạn cần '/ appname/detail/{{job_id}} /' Kiểm tra câu trả lời thứ hai của Aamir. Điều đó nên đã làm việc – karthikr

Trả lời

20

Thêm / lúc khởi động trong href:

<a href="/appname/detail/{{ job.id }}/">{{ job.name }}</a> 

Và cho thẻ url để làm việc bạn cần phải làm điều đó như thế này:

<a href="{% url 'appname.views.detail' jobID=job.id %}">{{ job.name }}</a> 
+0

cả hai phương pháp đó đều cho tôi cùng một URL đích như trước – avorum

+0

Cách bạn bao gồm url của appname' trong tệp urlconf chính? –

+0

hoạt động độc đáo! cảm ơn –

0

Từ kinh nghiệm của tôi, miễn là bạn đã xác định url của trang mà thẻ href sẽ dẫn đến trong urls.py, bao gồm đường dẫn tuyệt đối theo định dạng bên dưới.

Site name: yyyy.com 
Url of page to redirect to in urls.py: yyyy.com/signup/ 

Sample link: <a href="/signup/">Signup</a> 

Bạn sẽ nhận thấy rằng nội dung bên trong thẻ href được thêm vào url hiện tại. Đối với các liên kết động hơn, bạn có thể sử dụng một số python theo hướng dẫn DTL.