文件myapp/models.py
有此示例代碼..如何在Django的2個數據庫(沒有外鍵)上應用查詢?
from django.db import models
# model for 'user' table in database oracle_dbuser1:user
class User(models.Model):
. . .
customerid = models.BigIntegerField()
# model for 'customer' table in database oracle_dbuser2:customer
# Note that there is no Foreign key integrity among these legacy tables.
class Customer(models.Model):
. . .
customerid = models.BigIntegerField()
和文件myapp/admin.py
具有下面的代碼:
from maasusers.models import User, Customer
from django.contrib import admin
class UserAdmin(admin.ModelAdmin):
# A handy constant for the name of the alternate database.
db_one = 'dbuser1'
db_two = 'dbuser2'
# display in a list
list_display = (. . .) # question 1
def queryset(self, request):
result = super(UserAdmin, self).queryset(request).using(self.db_one) # question 2
return result
# Register the Poll class
admin.site.register(User, UserAdmin)
admin.site.register(Customer, UserAdmin)
問題1:參見上面:我想同時顯示錶的列。我怎樣才能做到這一點?例如。 Select usr.col1, usr.col2, cust.col1, cust.col10 from user usr, customer cust where usr.col2 = cust.col3;
問題2:如何使用using
函數編寫相應的queryset()
函數?
感謝您的信息和澄清喬希!嗯..有趣的問題,但.. :( – Aditya369 2012-04-22 12:27:27
@ Aditya369也許你不應該紀念這個答案是正確的權利呢。你會從那個可能解決您的問題的答案來通過阻止其他人,因爲我真的只是告訴你爲什麼它不起作用。 – 2012-04-22 12:35:40