在Python类(Django模型)中可以引用self的位置?
我有一个模型,看起来像下面这样:在Python类(Django模型)中可以引用self的位置?,python,django,self,Python,Django,Self,我有一个模型,看起来像下面这样: 类位置: 相关的 def which(self): 返回SomeModel.objects.filter(相关的) 上课地点(型号、型号、地点): attr1=models.CharField… … 相关的q=q(某些字段、某些内容、其他=自身) 有没有办法让这样的代码真正起作用?这个确切的代码不会运行,因为在声明related\u q时,实际上没有定义self 我考虑的选项只是在Location中抽象whatever并在子类中定义它,或者将related\u
类位置:
相关的
def which(self):
返回SomeModel.objects.filter(相关的)
上课地点(型号、型号、地点):
attr1=models.CharField…
…
相关的q=q(某些字段、某些内容、其他=自身)
有没有办法让这样的代码真正起作用?这个确切的代码不会运行,因为在声明related\u q
时,实际上没有定义self
我考虑的选项只是在Location
中抽象whatever
并在子类中定义它,或者将related\u q
设置为一个字符串,并将代码更改为以下行:
类位置:
相关的
def which(self):
返回SomeModel.objects.filter(related_q=self)
上课地点(型号、型号、地点):
attr1=models.CharField…
…
相关的\u q=“一些\u字段\u一些\u其他”
但是,这不起作用,因为这里的
related\u q
被视为kwarg的文字名称,而不是包含kwarg的字符串名称。类变量也可以使用self访问
class Location:
related_q: Q
def whatever(self):
return SomeModel.objects.filter(self.related_q)
或者可以直接使用类名引用它
class Location:
related_q: Q
def whatever(self):
return SomeModel.objects.filter(Location.related_q)