Я пытаюсь выучить Django (и Python) и создал свое собственное приложение на основе учебника, найденного на Djangoproject.com.
Моя модель такая:
from django.db import models
class Blog(models.Model):
author = models.CharField(max_length=200)
title = models.CharField(max_length=200)
content = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __unicode__(self):
return self.content
def was_published_today(self):
return self.pub_date.date() == datetime.date.today()
class Comment(models.Model):
blog = models.ForeignKey(Blog)
author = models.CharField(max_length=200)
comment = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __unicode__(self):
return self.comment
Тогда в моем views.py у меня есть это:
from django.shortcuts import render_to_response
from django.http import Http404
from mysite.blog.models import Blog
from mysite.blog.models import Comment
def index(request):
blog_posts = Blog.objects.all().order_by('-pub_date')[:5]
return render_to_response('blog/index.html', {'blog_posts': blog_posts})
def post(request,blog_id):
try:
post = Blog.objects.get(pk=blog_id)
#Below, I want to get the comments
#----------------------------------------------------------
comments = Comment.objects.select_related().get(id=blog_id)
#----------------------------------------------------------
except Blog.DoesNotExist:
raise Http404
return render_to_response('blog/post.html', {'post': post, 'comments': comment})
Мой вопрос: как мне получить комментарии, связанные с постом в блоге?
comments = Comment.objects.select_related().get(id=blog_id)
В самых основных терминах PHP я бы просто выполнил запрос, который выглядит примерно так:
$sql = "SELECT c.* FROM comments c WHERE c.blog_id=6"
Может ли кто-нибудь помочь мне или хотя бы направить меня к правильной документации для этого?
Большое спасибо!