foreignKey 字段不会出现在 Django 管理站点中

2024-04-14

模型上的外键未出现在 Django 管理站点中。这与是否在 ModelAdmin 实例中显式指定该字段无关(fields = ('title', 'field-that-does-not-show-up'))。

我意识到有很多变量可能导致这种行为。

class AdvertiserAdmin(admin.ModelAdmin):
    search_fields = ['company_name', 'website']
    list_display = ['company_name', 'website', 'user']


class AdBaseAdmin(admin.ModelAdmin):
    list_display = ['title', 'url', 'advertiser', 'since', 'updated', 'enabled']
    list_filter = ['updated', 'enabled', 'since', 'updated', 'zone']
    search_fields = ['title', 'url']

问题是广告商外键没有显示在 AdBase 的管理员中

class Advertiser(models.Model):
    """ A Model for our Advertiser
    """
    company_name = models.CharField(max_length=255)
    website = models.URLField(verify_exists=True)
    user = models.ForeignKey(User)

    def __unicode__(self):
        return "%s" % self.company_name

    def get_website_url(self):
        return "%s" % self.website

class AdBase(models.Model):
    """
    This is our base model, from which all ads will inherit.
    The manager methods for this model will determine which ads to
    display return etc.

    """
    title = models.CharField(max_length=255)
    url = models.URLField(verify_exists=True)
    enabled = models.BooleanField(default=False)
    since = models.DateTimeField(default=datetime.now)
    expires_on=models.DateTimeField(_('Expires on'), blank=True, null=True)
    updated = models.DateTimeField(editable=False)

    # Relations
    advertiser = models.ForeignKey(Advertiser)
    category = models.ForeignKey(AdCategory)
    zone = models.ForeignKey(AdZone)

    # Our Custom Manager
    objects = AdManager()

    def __unicode__(self):
        return "%s" % self.title

    @models.permalink
    def get_absolute_url(self):
        return ('adzone_ad_view', [self.id])

    def save(self, *args, **kwargs):
        self.updated = datetime.now()
        super(AdBase, self).save(*args, **kwargs)

    def impressions(self, start=None, end=None):
        if start is not None:
            start_q=models.Q(impression_date__gte=start)
        else:
            start_q=models.Q()
        if end is not None:
            end_q=models.Q(impression_date__lte=end)
        else:
            end_q=models.Q()
        return self.adimpression_set.filter(start_q & end_q).count()

    def clicks(self, start=None, end=None):
        if start is not None:
            start_q=models.Q(click_date__gte=start)
        else:
            start_q=models.Q()
        if end is not None:
            end_q=models.Q(click_date__lte=end)
        else:
            end_q=models.Q()
        return self.adclick_set.filter(start_q & end_q).count()

class BannerAd(AdBase):
    """ A standard banner Ad """
    content = models.ImageField(upload_to="adzone/bannerads/")

谜团加深了。我只是尝试为 AdBase 和 BannerAd 创建一个 ModelForm 对象,并为广告商生成两个字段。这里发生了一些疯狂的管理事情......


我相信我刚刚遇到exactly同样的问题,但在同事的帮助下得以调试。 :)

简而言之,如果您查看原始 HTML 源代码,您会发现该字段始终存在 - 只是这样:

  • Django 尝试聪明一点,用 CSS 将表单字段放在 div 中class="form-row $FIELD_NAME",
  • 该字段的名称是“advertiser”,因此 CSS 类是“form-rowadvertiser”,
  • ...Adblock Plus。

Adblock Plus 将隐藏 CSS 类“advertiser”的任何内容,以及大量其他 CSS 类。

我认为这是 Django 中的一个错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

foreignKey 字段不会出现在 Django 管理站点中 的相关文章

随机推荐

  • 在 Windows 中,如何将单个文本文件中的多行合并为一行?

    我有多个遵循此格式的标准文本文件 每个文件中的行数不同 Line1 Line2 Line3 Line4 我想将每一行合并为一行 每组字符之间有一个空格 因此文本文件将如下所示 Line1 Line2 Line3 Line3 等等 由于每个文
  • Blueprism:如何在计算阶段使用替换功能?

    我正在使用 BluePrism 从应用程序中读取文本 文本结构如下 数字因情况而异 请注意您的订单参考号 525 我需要能够从文本中提取数字 看计算阶段 有一个替换函数 replace text pattern new text 我想使用此
  • python 路径 django

    我怎样才能添加一些东西到我的 Pythonpath 文件到底位于哪里 我必须更改以添加到我的 pythonpath 中 我到底要添加什么到我的 Pythonpath 中 如果Python调用 Library Frameworks Pytho
  • 从 python 3.2 中的文件的“Content-Length”值获取文件大小

    我想要得到Content Length来自元变量的值 我需要获取要下载的文件的大小 但最后一行返回错误 HTTPMessage对象没有属性getheaders import urllib request import http client
  • 如何将令牌存储在Android的本地或会话存储中?

    我正在创建一个与 SOAP Web 服务交互以从数据库获取数据的应用程序 当用户成功登录时 它会通过网络服务生成一个令牌 稍后在其他活动中调用 Web 服务方法时将需要此令牌 我的问题是 如何在需要时将该令牌传递给下一个活动并维护它直到用户
  • 如何将 HTML 和 CSS 添加到 PDF 中 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个 HTML 不是 XHTML 文档 可以在 Firefox 3 和 IE 7 中很好地呈现 它使
  • x, = ... - 这个尾随逗号是逗号运算符吗?

    我不明白变量后面的逗号是什么lines means http matplotlib org examples animation simple anim html http matplotlib org examples animation
  • 使用 jQuery 获取所选选项 id

    我正在尝试使用 jQuery 根据所选选项发出 ajax 请求 有没有一种简单的方法来检索所选的选项 ID 例如 id2 使用 jQuery
  • 删除图像c#的圆形透明部分

    我正在位图上创建一个圆圈 但想在其中有一个洞 经过半个小时的搜索 我只找到了将图像裁剪为圆形的方法 困难的是 中间的孔应该像图像的其余部分一样透明 This https i stack imgur com Avdrv png是基础图像并且黄
  • JavaFX SimpleObjectProperty 与 SimpleTProperty

    使用有什么区别 简单字符串属性 vs SimpleObjectProperty or 简单整数属性 vs SimpleObjectProperty 除了返回包装器而不是原始类型之外 无论如何它都可以自动转换 API 为特定类型添加了附加功能
  • 如何设置 scons 系统包含路径

    使用 scons 我可以轻松设置我的包含路径 env Append CPPPATH foo 这传递了标志 Ifoo to gcc 不过 我正在尝试在启用大量警告的情况下进行编译 特别是与 env Append CPPFLAGS Werror
  • 谷歌地图 v3 重复标记 - 使用数组来管理标记但仍然得到重复项

    我不明白 我有一个数组来管理我添加到地图中的标记 当我更新集合时 即使我的标记数组中仍然只有正确数量的标记 标记也会重复 我确信这对我来说是一个非常简单和愚蠢的错误 但我没有看到它 m viewMarkers function data a
  • getUidTxBytes(int uid) 在 android 6.0 中始终返回 0

    我正在尝试获取所有应用程序的网络流量统计信息 我只是打印设备中每个应用程序的总网络流量 该代码在 android 4 4 和 5 1 设备中运行良好 但在 android 6 0 设备中它始终为所有应用程序返回 0 任何人都可以告诉我为什么
  • 从父级构建 Maven 模块,无需父级引用

    我已经为几个模块建立了一个反应器构建 效果很好 我的子模块没有引用父 pom xml 当我将子模块用于多个产品时 存在多个父 pom 因此无论如何我都无法将父引用放在子模块中 现在我希望父 pom 能够更改子模块中的一些设置 在不引用父 p
  • Ruby:无法解析在 OS X 中导出为 CSV 的 Excel 文件

    我正在使用 Ruby 的 CSV 库来解析一些 CSV 我有一个看似格式良好的 CSV 文件 是通过将 Excel 文件导出为 CSV 来创建的 However CSV open filename r 导致CSV IllegalFormat
  • 如何在PHP中显示上传文件后的结果

    我有一个将视频上传到服务器的脚本 一切正常 但在视频上传到服务器完成后出现问题 它以数组形式显示 uploads 文件夹中所有上传的文件 我只想要我刚刚上传的文件的结果 它不显示以前的文件 我需要 ffmpeg 来提高视频质量 索引 php
  • 让soapUI在附件选项卡中显示附件以进行响应

    我有一个通过 HTTP GET 返回文件的 REST 服务 我已经在响应中 在服务器上 设置了这些标头 并且下载在任何浏览器中都能完美运行 Content Length Content Type Content Disposition 然而
  • 阅读器关闭时尝试读取无效

    我正在处理 C 和 MySql 请求 我正在尝试检索数据库中的数据 但出现此错误消息 阅读器关闭时尝试读取无效 感谢你们的帮助 我有这个功能 public MySqlDataReader GetValueFromTable string t
  • HTML/CSS - 将元素宽度扩展到可见区域(超出包含元素的宽度)

    我正在生成一个网页 其中有一个带有绿色背景的 h2 标记了一个表格 该表格可以有任意数量的列 我希望 h2 元素水平延伸至用户可以滚动的范围 以便表格上方始终有一个绿色条 我想要实现的效果是一个绿色条 至少跨越表格的宽度 因此无论用户滚动多
  • foreignKey 字段不会出现在 Django 管理站点中

    模型上的外键未出现在 Django 管理站点中 这与是否在 ModelAdmin 实例中显式指定该字段无关 fields title field that does not show up 我意识到有很多变量可能导致这种行为 class A