使用预览或类似的东西添加与对象的关系

时间:2013-06-28 10:00:58

标签: django

我有Document型号:

class Document(models.Model):
    user = models.ForeignKey(User)
    title = models.CharField(max_length=255)
    description = models.TextField()
    content = models.TextField()

DocumentRelation型号:

class DocumentRelation(models.Model):
    document_a = models.ForeignKey(Document,related_name='doc_a')
    document_b = models.ForeignKey(Document,related_name='doc_b')

我有single_document次观看次数:

def single_document(request,id):
    doc = Document.objects.get(id=id)

    return render_to_response('single_file.html',{'doc':doc},context_instance=RequestContext(request))

single_file.html我有:

<a href="/add-relation/{{ doc.id }}" class="btn btn-success">Add related document</a>

我需要创建视图def add_relation(request,id):。添加关系的最佳方式是什么?我需要预览要添加为相关的文档。怎么解决?

(我询问整体设计。如何解决)

1 个答案:

答案 0 :(得分:3)

首先,为什么不在文档模型中使用ManyToManyField,如下所示:

related_documents = models.ManyToManyField('self')

如果您不想使用javascript(一个用于选择,另一个用于确认并显示相关文档),则可以使用两步形式。

如果需要,您还可以使用javascript并在用户选择时动态加载相关文档。