Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我们可以在Django中使用用户定义的管理器执行类似SQL的查询吗?_Django - Fatal编程技术网

我们可以在Django中使用用户定义的管理器执行类似SQL的查询吗?

我们可以在Django中使用用户定义的管理器执行类似SQL的查询吗?,django,Django,下面是我的模型细节 class QuesManager(db.Manager): def with_counts(self): from django.db import connection cursor = connection.cursor() cursor.execute(""" SELECT Q.question, Q.title, Q.qid, V.up_qid, V.down_qid

下面是我的模型细节

class QuesManager(db.Manager):
    def with_counts(self):
        from django.db import connection
        cursor = connection.cursor()
        cursor.execute("""
            SELECT Q.question, Q.title, Q.qid, V.up_qid, V.down_qid
            FROM Question Q, Votes_ques V
            WHERE Q.qid=V.qid
            ORDER BY 3 DESC""")
        result_list = []
        for row in cursor.fetchall():
            p = self.model(question=row[0], title=row[1], up_vote=row[2], down_vote=row[3])
            result_list.append(p)
        return result_list

class dummy(db.Model):
    obj = QuesManager()

class Question(db.Model):
    userid = db.CharField(max_length=50)
    posted = db.DateTimeField(auto_now=True)
    question = db.TextField(max_length=500)
    qid = db.AutoField(primary_key=True)
    title = db.TextField(max_length=80)
    tags = db.ManyToManyField('Tags')

class Votes_ques(db.Model):
    qid = db.ForeignKey('Question')
    up_qid = db.IntegerField()
    down_qid = db.IntegerField()

from mysite.answers.models import dummy
from mysite.answers.models import Votes_ques
from mysite.answers.models import Question
是否,
Vote=dummy.obj.all()
将给出QuesManager类内查询的所有结果集。有人知道这件事吗


谢谢

也许你只是在寻找这个:

questions = Question.objects.all()
for question in questions:
    votes = question.votes_ques_set.all()

嗨,我有一个疑问。如何将两个对象(问题和投票)相应地组合到一个对象中,并最终组合到对象列表中。您好,WoLpH,是的,但是如何组合问题和投票,因为我需要将其从视图发送到html文件。我的意思是,我期待类似于列表形式的结果集的东西,这样我就可以将它发送到我的html文件中,在那里我将使用它。下面是我的部分代码args=dict(Questions=Questions)t=loader.get_template('main.html')c=Context(args)return-HttpResponse(t.render(c))。在这里,问题应该包含问题对象和作为单个对象连接在一起的相应投票对象。在Django这可能吗?请告知!!因此,一旦这是可能的,那么在我的main.html文件中,我将有一个类似{%if Questions%}{%for item in Questions%}
问题:{{item.qid}}
{{item.Question}投票upx{item.up{Vote}投票downx{item.down{Vote}{%endfor%}{%endif%}如果这是不可能的,有没有办法得到同样的东西。我基本上需要显示所有的问题对象及其对应的投票对象。@Prabakaran Subramanian:您也可以在模板中使用
question.voces\u ques\u set.all
。但你也可以反过来做。对于每个
投票问题
对象,您可以使用
qid
获得
问题
。因此,
一些投票问题。qid
会给你这个问题。