Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django在Admin中为外键创建链接_Django - Fatal编程技术网

django在Admin中为外键创建链接

django在Admin中为外键创建链接,django,Django,我使用的是django1.9 我有一个模型有一个外国的 class Foo(models.Model): bar = models.ForeignKey(Bar) class Bar(models.Model): name = models.CharField(max_length=50) 这是我的FooAdmin: class FooAdmin(admin.ModelAdmin): list_display = ['bar'] def def related_bar(se

我使用的是django1.9

我有一个模型有一个外国的

class Foo(models.Model):
  bar = models.ForeignKey(Bar)

class Bar(models.Model):
  name = models.CharField(max_length=50)
这是我的FooAdmin:

class FooAdmin(admin.ModelAdmin):
  list_display = ['bar']

  def def related_bar(self, obj):
    link = urlresolvers.reverse("admin:foo_foos", args=[obj.bar.id])
    return u'<a href="%s">%s</a>' % (link, obj.bar.id)
related_bar.short_description = 'bar'

我肯定错过了一些东西,但我发现了。那么,在django做这件事的最佳方式是什么呢?我试图在文档中搜索,但找不到关于此问题的相关方法。

首先,您试图获取
条形图
显示列表,但您正在解析
foo\u foos
而不是foo\u bar。此外,您缺少
\u change
后缀,以表明您需要管理员详细信息视图

def related_bar(self, obj):
    link = urlresolvers.reverse("admin:foo_bar_change", args=[obj.bar.id])
    return u'<a href="%s">%s</a>' % (link, obj.bar.id)

首先,您试图获取
bar
显示列表,但您正在解析
foo\u foos
而不是foo\u bar。此外,您缺少
\u change
后缀,以表明您需要管理员详细信息视图

def related_bar(self, obj):
    link = urlresolvers.reverse("admin:foo_bar_change", args=[obj.bar.id])
    return u'<a href="%s">%s</a>' % (link, obj.bar.id)
Page        URL name                                     Parameters
Changelist  {{ app_label }}_{{ model_name }}_changelist  
Add         {{ app_label }}_{{ model_name }}_add     
History     {{ app_label }}_{{ model_name }}_history     object_id
Delete      {{ app_label }}_{{ model_name }}_delete      object_id
Change      {{ app_label }}_{{ model_name }}_change      object_id