Django:无法将关键字“”解析为字段。选项有:

2024-03-17

我在访问时遇到这个奇怪的问题ManyToManyField.

我有以下型号。

class Link(models.Model):
    title = models.CharField(max_length = 200)
    url = models.URLField(unique = True)
    tags = models.ManyToManyField(Tag)
    creation_date = models.DateTimeField(auto_now_add = True)
    user = models.ForeignKey(User)
    likes = models.ManyToManyField(User, related_name = "%(app_label)s_%(class)s_user_likes")
    dis_likes = models.ManyToManyField(User, related_name = "%(app_label)s_%(class)s_user_dis_likes")

    class Meta:
        abstract = True

class URL(Link):
    preview_image = models.URLField()
    preview_heading = models.CharField(max_length = 100)
    preview_content = models.CharField(max_length = 100)

当我尝试访问时URL.objects.get(pk=1).likes.all(), I get Cannot resolve keyword '' into field. Choices are:... error.

URL.objects.get(pk=1).tags.all(), URL.objects.get(pk=1).user and URL.objects.filter(likes=auser, pk=1)工作正常。

Updates:

  1. 田野likes and dis_likes添加使用south通过schemamigration
  2. 以前我使用的是Django 1.6.1,更新为Django 1.6.2,问题仍然存在
  3. 截断数据库,将其同步以包含新表,问题仍然存在
  4. 部分回溯:

    File "F:\system\env\lib\site-packages\django\db\models\manager.py" in all
      133.         return self.get_queryset()
    File "F:\system\env\lib\site-packages\django\db\models\fields\related.py" in get_queryset
      549.                 return super(ManyRelatedManager, self).get_queryset().using(db)._next_is_sticky().filter(**self.core_filters)
    File "F:\system\env\lib\site-packages\django\db\models\query.py" in filter
      590.         return self._filter_or_exclude(False, *args, **kwargs)
    File "F:\system\env\lib\site-packages\django\db\models\query.py" in _filter_or_exclude
      608.             clone.query.add_q(Q(*args, **kwargs))
    File "F:\system\env\lib\site-packages\django\db\models\sql\query.py" in add_q
      1198.         clause = self._add_q(where_part, used_aliases)
    File "F:\system\env\lib\site-packages\django\db\models\sql\query.py" in _add_q
      1234.                     current_negated=current_negated)
    File "F:\system\env\lib\site-packages\django\db\models\sql\query.py" in build_filter
      1100.                     allow_explicit_fk=True)
    File "F:\system\env\lib\site-packages\django\db\models\sql\query.py" in setup_joins
      1357.             names, opts, allow_many, allow_explicit_fk)
    File "F:\system\env\lib\site-packages\django\db\models\sql\query.py" in names_to_path
      1277.                                      "Choices are: %s" % (name, ", ".join(available)))
    
    Exception Type: FieldError at /url/3
    Exception Value: Cannot resolve keyword '' into field. Choices are: __app___article_user_dis_likes, __app___article_user_likes, __app___imageurl_user_dis_likes, __app___imageurl_user_likes, __app___review_user_dis_likes, __app___review_user_likes, __app___url_user_dis_likes, __app___url_user_likes, __app___videourl_user_dis_likes, __app___videourl_user_likes, article, date_joined, email, first_name, groups, id, imageurl, is_active, is_staff, is_superuser, last_login, last_name, logentry, password, review, url, user_permissions, username, userobjectpermission, videourl
    

我想我已经找到问题了。我想问题出在我的应用程序的名称上__app__。 Django 字段查找假设之前的一切__(双下划线) 是一个在我的例子中解析为 ``(空字符串) 的字段。

总是很难命名默认应用程序及其所在的项目。想法__app__是更Pythonic和更聪明的解决方案。我想我应该将我的应用程序重命名为app。希望这有效。

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

Django:无法将关键字“”解析为字段。选项有: 的相关文章

随机推荐

  • 签署程序集 - 基础知识

    签署集会意味着什么 为什么这样做 最简单的签名方法是什么 snk 文件有什么用 其他两个答案都很好 但还有一点 证书 签名和 强名称 签名很容易混淆 正如 Stefan Steinegger 所说 强名称签名的目的是 让您的客户确定他们认为
  • 如何使 Xamarin.Mac 应用程序“登录时打开”?

    我有一个 Xamarin Mac 应用程序需要在登录时自动打开 如何让我的应用程序获得此设置而无需手动单击它 我可以给你一个如何以编程方式完成的提示 对于这种方法 您需要通过以下方式调用本机库DllImport 以下代码将让您了解如何继续
  • 如何使我的类上的自定义事件消费成为可选?

    当我注释掉fm OnLoaded下面一行 它给我一个错误 OnLoaded 为空 如何使我的类的调用者可以选择是否像 NET 类 事件一样使用该事件 using System using System Windows namespace T
  • set_time_limit 在 Heroku 上不起作用

    我正在使用 PHP 和 heroku 由于某些数据库插入和查询 我不断收到请求超时错误 我将此行添加到我的所有 php 文件中以避免此错误 set time limit 0 但是 我仍然收到此错误 heroku 会忽略这个命令吗 我做了一个
  • 谷歌应用程序引擎中的选择属性

    平台 django 1 0 谷歌应用程序引擎 app engine patch python 2 5 4 我正在尝试使用 Choice 属性 就像我一直在 django 网站中使用的那样 STATUS CHOICES 1 Yet To St
  • 无法使用 GetManifestResourceStream() 加载清单资源

    我使用 XSD 创建了一个自定义配置部分 为了解析遵循这个新架构的配置文件 我使用以下内容加载资源 我的 xsd 文件 public partial class MonitoringConfiguration public const st
  • 如何使用Python进行大规模开发?

    我有兴趣了解 Python 的大规模开发 特别是如何维护大型代码库 当您对方法的签名进行不兼容的更改时 如何找到调用该方法的所有位置 在C Java中 编译器会为你找到它 那么在Python中你如何做到这一点呢 当您在代码深处进行更改时 由
  • 使用自动更新计数器保持 $SESSION 活动

    我希望将会话保持三天 并且每当他们访问该页面时 它就会再次更新最多三天 基本上 如果他们三天不访问该网站 他们的会话就会下降 ini set session cookie lifetime 60 60 24 3 saw on a simil
  • 在单独的线程中运行 SimpleXMLRPCServer 并关闭

    我有一个类 我希望通过 python 中的 SimpleXMLRPCServer 进行测试 我设置单元测试的方法是创建一个新线程 并在其中启动 SimpleXMLRPCServer 然后我运行所有测试 最后关闭 这是我的服务器线程 clas
  • 带有图像背景和鼠标绘制的面板

    如果 Paint 方法已用于其他目的 如何在 JPanel 中使用图像作为背景 我试图在面板中绘制图像 这是我用铅笔绘制的代码 但我不知道如何添加图像作为背景 Override public void paint Graphics g if
  • 将环境变量传递给角度库

    我使用 angualr2 library yeoman 生成器创建了公司内部库 一些 Angular 服务在我们当前的应用程序中使用环境变量 API 端点在每个环境上都会更改 我想知道将当前环境对象传递给 angular2 库服务的最佳方法
  • 如何在ng bootstrap的输入中设置日期格式

    我在用NG引导程序 https ng bootstrap github io components datepicker日期选择器 我想在输入标签中设置日期格式 这是我的html代码
  • 将盲文字符打印到 cmd c++

    对于一个程序 我需要将盲文字符输出到控制台 我找到了一种使用如下代码输出 unicode 字符的方法 include
  • onCreateDrawableState 永远不会调用

    我必须向RelativeLayout 添加新状态 但永远不会调用onCreateDrawableState 方法 我的班级是 public class UnreadableRelativeLayout extends RelativeLay
  • java.lang.ClassCastException:无法转换 java.util.LinkedHashMap

    javascript ajax headers Accept application json Content Type application json url realgrid product addOd do type post da
  • SqlDataAdapter.Fill() 超时 - 底层存储过程快速返回

    我有一个 SqlDataAdapter 其中填充了 21 行数据 4 列 驱动它的存储过程会在几秒钟内返回 SQL Mgmt Studio 但 Fill 需要 5 分钟 ArrayList ret new ArrayList SqlData
  • iOS - CALayer 和手势/滑动识别器

    我在视图中添加了一个图层来创建渐变背景色 但我需要使用UISwipeGestureRecognizer在我看来 问题是 现在有了图层 滑动识别器就不起作用了 我能怎么做 我可以向图层添加滑动识别器吗 谢谢 CALayer及其孩子不支持UIG
  • 对象字面量中的括号

    对象字面量中的括号只是分组运算符吗 节点字符串化 https github com fuqcool node stringify将转换 a 1 到字符串 a 1 a 2 我是否可以认为这里的括号对数据没有影响 即即使没有括号也完全相同 Ye
  • 最小宽度媒体查询在 ipad 上不起作用?

    为什么在横向模式下的 iPad 上无法拾取以下媒体查询 media all and min device width 1000px css here Or media all and min width 1000px css here 我希
  • Django:无法将关键字“”解析为字段。选项有:

    我在访问时遇到这个奇怪的问题ManyToManyField 我有以下型号 class Link models Model title models CharField max length 200 url models URLField u