Django uygulamamda bir sorunum var, iki blog nesnesi oluşturdum, mysql uygulamasında bir tane ve görünümümle başka bir tane oluşturdum. Onları hem veritabanımda hem de onları bir sorgu ile aldığımda göremiyorum.Django sorguları boş dizeleri döndürüyor
Ben mod_wsgi
ile django 1.9, piton 2.7, apache 2.2 kullanıyorum İşte benim görünümü ve benim şablondur.
def list_view(request):
blogs = Blog.objects.filter(published=True)
return render_to_response('blog/list.html',
{
"blogs": blogs,
},
context_instance=RequestContext(request))
{% for blog in blogs %}
<h2>{{blog.title}}</h2>
<p>{{blog.content}}</p>
<span>{% trans 'Writen by' %} : {{blog.writer.last_name}} {{blog.writer.first_name}}</span> - <span>{% trans 'Published on' %} {{blog.date_published}}</span>
{% endfor %}
Sorgu içinde 2 Blog nesnesi içeren bir liste var, ancak boş. Şablonum sadece Writen By - İki kez yayınlandı.
Ancak tüm kullanıcı bilgilerime giriş yapabilir ve yazdırabilirim.
Sorun ne olabilir, nasıl çözebilirim? Çok teşekkürler !
DÜZENLEME: eklemek Eğer Blog.__init__()
overrode zaman, ebeveyne *args
ve **kwargs
göndermedi
class Blog(models.Model):
title = models.CharField(_("Title"), max_length=255, null=False, blank=False)
content = models.TextField(_("Content"), null=True, blank=True)
writer = models.ForeignKey(User, verbose_name=_('Writer'), blank=False, null=False)
published = models.BooleanField(_("Pusblished"), default=False)
date_published = models.DateTimeField(_("Date published"))
def __str__(self):
return '%s' % (self.title)
def __init__(self, *args, **kwargs):
super(Blog, self).__init__()
:
bunu tutmak istiyorsanız
, gibi bir şey mi? Kodu göster. –Benim models.py – Eowiena