如何使用django-ajax相关字段引用self作为模型

时间:2011-06-16 16:32:14

标签: python ajax django

我正在尝试使用与django-ajax相关的字段,而我正在尝试创建关系的foreignkey字段是模型本身。我尝试了'self',Node,甚至是self(没有引号),结果相同。

这大约是我尝试使用它的方式:

class Node(models.Model):
    parent = ForeignKeyByLetter('self', field_name = "name")
    name = models.CharField(max_length = 256)

首先我对如何使用它感到有点迷失,而且文档也不是非常有用。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

根据文档,ForeignKeyByLetter是表单字段而不是模型字段,这解释了为什么它不适合您。

我也不熟悉 django-ajax-related-fields ,但从它的外观来看,你会想要尝试以下几点:

# in models.py
class Node(models.Model):
    parent = ForeignKey('Node')
    name = models.CharField(max_length = 256)


# in forms.py
from models import Node
from django.forms import ModelForm
from ajax_filtered_fields.forms import ForeignKeyByLetter

class NodeForm(ModelForm):
    class Meta:
        model = Node
    parent = ForeignKeyByLetter(Node, field_name = "name")

以前没用过,我可能错了。这里希望这至少会让你走上正轨。