2011-06-06 50 views

回答

4

这不是加入这件事,但列名。你可以,例如,请执行下列操作:

,并传递到您的table模型。然后Django会将other_table中的名称视为table的名称,并给出您的正常table实例。我无法想象为什么你想这样做,但...

重要的是要记住的是,Django使用从你的SQL到它的模型结构的一个非常简单的映射。如果你愿意,你可以颠覆它,但是你最终可能会遇到一些难以维护的代码。

+0

我链接到的页面表示它使用表名来查找要使用的模型。所以我想知道如果我加入两个不同模型的表格,它会如何知道使用哪种模型? – Greg 2011-06-06 13:30:11

+0

我不认为这是说的。您将查询传递给ModelName.objects.raw(查询),以便返回ModelName对象。它所说的是,您需要在原始SQL中使用的表名称是作为appname_modelname创建的。 – 2011-06-06 13:33:35