Sau đây là mô hình cơ sở dữ liệu đơn giản tôi có:in id tổ chức mô hình appengine trong mẫu html
class Notes(db.Model):
text = db.StringProperty(multiline=True)
date = db.DateTimeProperty(auto_now_add=True)
Bây giờ trong xử lý url, tôi gửi tất cả các ghi chú vào mẫu như sau:
class MainPage(webapp2.RequestHandler):
def get(self):
notes = Notes.all()
self.render_template("index.html", {'notes':notes})
trong mẫu tôi đang sử dụng động cơ jinja2 khuôn mẫu, tôi muốn các id
của mỗi ghi chú được in, vì vậy mà tôi có thể nhúng một liên kết chỉnh sửa, phần nào như thế này:
{% for note in notes %}
<p>
{{ note.text }} <br>
{{ note.date }} <br>
(<a href ="edit/{{note.key.id}}">edit </a>)
{% endfor %}
Nhưng những rắc rối là, tôi không nhìn thấy bất cứ điều gì in, ở vị trí của note.key.id
Theo các tài liệu trên herekey
lớp đại diện cho một chìa khóa duy nhất cho một tổ chức cơ sở dữ liệu và điều này có một phương pháp id
, một giá trị số của nó. cho một ghi chú duy nhất từ bộ sưu tập ghi chú, tôi muốn ghi chú số id
của ghi chú.
Nếu tôi sử dụng công cụ tô khuôn django tôi nhận được các giá trị {{ notes.key.id }}
được in, nhưng với jinja2
tôi không thấy.
Tôi làm cách nào để thực hiện việc này?
Tôi vừa thử nghiệm nó, trong trường hợp của mình, tôi phải điều chỉnh giải pháp của bạn như sau: '{{job.key.id()}}' (** khóa **, không * phím() *), sử dụng python 2,7, bình, jinjia2, ndb ... – firepol