2010-09-21 39 views
80

Có cách nào để lấy id của một trường trong mẫu không?Làm cách nào để lấy id của trường biểu mẫu ở Django?

Trong HTML tôi nhận được: <input name="field_name" id="id_field_name"...

Tôi biết tôi có thể có được tên với {{ field.html_name }}, nhưng là có bất cứ điều gì tương tự để nhận được id?
Hoặc tôi chỉ có thể làm như sau: id_{{ field.html_name }}?

Trả lời

137

Bạn có thể lấy ID như thế này:

{{ field.auto_id }} 
+0

gì về tên trường? – Clayton

+5

@Clayton '{{field.html_name}}' – chucksmash

8

này không làm việc cho tất cả các lĩnh vực hình thức.

Ví dụ: {{ form.address.auto_id }} hoạt động trong khi {{ form.address.auto_name }} sẽ không hoạt động.

Tuy nhiên, bạn có thể sử dụng {{ form.address.html_name }} để nhận câu trả lời tương đương.

Sau đây là các docs

+4

Tôi nghĩ ý của bạn là bạn có thể sử dụng "auto_id" cho id, nhưng bạn phải sử dụng "html_name" cho tên. Đáng buồn là tôi thấy câu trả lời của bạn được diễn đạt một cách gây nhầm lẫn cho câu hỏi. – Steve

+0

Câu trả lời này không có tác dụng đối với tôi, và Will đã làm việc hoàn hảo ở trên. Tôi đã thử chúng trở lại với phản hồi tức thời. – eficker

12

Bạn cũng có thể sử dụng:

{{ field.id_for_label }} 
Các vấn đề liên quan