Django 1.8.6とPython 3.6を使用しています。私は、ブログを作成しようとすると、ジャンゴとPythonにはかなり新しいです。データベースからデータを取得できません。それはデータベースデータベースからデータが取得されません
にあるにもかかわらず、このモデルを扱う私のmodel.py
class Post(models.Model):
STATUS_CHOICES = (('draft', 'Draft'), ('published','Published'),)
title = models.CharField(max_length=250)
slug = models.SlugField(max_length=250, unique_for_date='publish')
author = models.ForeignKey(
User,
blank=True,
null=True,)
body = models.TextField()
publish = models.DateTimeField(default=timezone.now)
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
status = models.CharField(
max_length=10, choices=STATUS_CHOICES, default='draft')
objects = models.Manager() # The default manager
published = PublishedManager() # custom manager
class Meta:
ordering = ('-publish',)
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse(
'blog:post_detail',
args=[
self.publish.year, self.publish.strftime('%m'),
self.publish.strftime('%d'), self.slug
])
ビューは
def post_detail(request, year, month, day, post):
post = get_list_or_404(
Post,
slug=post,
status='published',
publish__year=year,
publish__month=month,
publish__day=day)
return render(request, 'blog/post/detail.html', {'post': post})
私たちのデータに
<p>Published {{ post.pulish }} by {{ post.author }}</p>
を取得するためのHTMLテンプレートです出力は "Published by"
です。しかし、私はちょうど
{{ posts }}
を使用するとき、私はがデータベース
に保存された記事のタイトルである "これは私である" 出力
[<Post: this is Me>]
を取得事前に感謝しますr時間と労力。あなたが問題が何であるか私に知らせるなら、大きな助けになるでしょう。
またはあなたが行う場合ではありませんあなたができる結果セットを繰り返したいと思う '
{{post.0.author}}
によって公開された{{post.0.publish}}' 0はインデックスです – latshayes @latsha彼がしたいかどうかの質問私はこれをこのように残しました。 – e4c5
ありがとう、それは助けた。私はちょうど1つを表示する必要があるので、それを残念。しかし、なぜこのような繰り返しが必要なのか不思議です –