Accepts_nested_attributes_for 导致 SQLException

2024-01-08

我想用accepts_nested_attributes_for创建一个 Article 对象has_many部分。

class Article < ActiveRecord::Base
  has_many :sections, :order => "position", :dependent => :destroy
  belongs_to :categories
  accepts_nested_attributes_for :sections, :allow_destroy => true, :reject_if => lambda { |attributes| attributes['title'].blank? }
  validates_presence_of :name, :on => :create, :message => "An article must have a title"
end

class Section < ActiveRecord::Base
  belongs_to :article
  acts_as_list :scope => "article"
  has_attached_file :image, 
                    :styles => { :medium => "300x300>",
                                 :thumb => "100x100>" }
end

每当:reject_if条件接受嵌套属性(如果title属性不是blank?) 我看到一个 SQLException。否则,文章将在没有关联章节的情况下成功创建。

Parameters: {"article"=>{"name"=>"My Article", "category_id"=>"7", "sections_attributes"=>{"0"=>{"title"=>"Section 1", "content"=>"Section 1 of my new article"}}}}

AREL (30.3ms)  INSERT INTO "articles" ("content", "category_id", "position", "name") VALUES (NULL, 7, NULL, 'My Article')

Section Load (0.4ms)  SELECT "sections".* FROM "sections" WHERE (article) ORDER BY position DESC LIMIT 1

SQLite3::SQLException: no such column: article: SELECT "sections".* FROM "sections" WHERE (article) ORDER BY position DESC LIMIT 1
Completed   in 68ms

我试图找出期间出了什么问题Section Load阶段,自WHERE (article)是出乎意料的。谢谢阅读。


你的问题是你的acts_as_list :scope => "article"打电话,按照acts_as_list 文档 http://rubydoc.info/gems/acts_as_list/0.1.2/ActsAsList/ClassMethods%3aacts_as_list如果你提供一个字符串,那么 gem 会认为它是 SQL,它将按字面意思使用。你想用:article这里 - 这告诉acts_as_list使用:article协会。

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

Accepts_nested_attributes_for 导致 SQLException 的相关文章

随机推荐

  • 在 macOS 应用程序中以编程方式创建和定位 NSButton? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何以编程方式在 macOS Coc
  • 为什么 requestHeaders 未定义?

    我正在制作一个记录请求标头的 Chrome 扩展 在我的background js文件中我有这个代码 chrome webRequest onSendHeaders addListener function res res requestH
  • 反应选择下拉菜单在模式内打开

    我有一个自定义模式 里面有 2 个反应选择组件 模态主体已准备好自动滚动 以防内容超出其大小 但反应选择组件下拉列表会在模态内部打开并出现溢出 这正是我不想要的 没有溢出 它工作正常 我正在使用 CSS 模块 div this props
  • 更新序列中的多个值

    要获得更新了一个值的序列 可以使用 seq updated index value 我想为一系列元素设置一个新值 有这个库函数吗 我目前使用以下功能 def updatedSlice A seq List A ind Iterable In
  • 如何在C#中访问JS变量

    假设我有 div 500 div 上下文 asp net aspx 页面 如何允许 C 代码访问该值 我正在考虑一些类似于 jQuery 的事情 有没有更好的办法 使用隐藏的输入框
  • 为什么 Weak::new() 不起作用,而 Rc::downgrade() 起作用?

    我正在创建一个返回一个的函数Weak对特征对象的引用 在找不到对象的情况下 它是一个查找函数 我想返回一个空的Weak参考使用Weak new use std rc self Rc Weak use std cell RefCell pub
  • QNetworkAccessManager 发送 GET 两次

    我有一些类可以干扰 HTTP 服务器 这是有意义的代码部分 const QString someClass BASEURL QString http 127 0 0 1 8000 someClass someClass manager ne
  • 如何在luxon中创建momentLocaleData.firstDayOfWeek()?

    您立即可以致电 momentLocaleData firstDayOfWeek Luxon 是否有可能获得相同的功能 更新答案 Luxon 在版本中添加了本地化周支持3 4 4 现在你可以使用startOf https moment git
  • 服务总线处置对象

    我通过服务总线在 Azure 上使用消息队列架构 有时 当我尝试向队列发送消息时 它会失败 这是我得到的错误 有时我会收到此消息 Message Can t create session when the connection is clo
  • 使用 highcharter 自定义箱线图的颜色

    我在 highcharter 上有箱线图 我想自定义 填色 边框颜色 这是我的代码 df data frame cbind categ rep c a b c d value rnorm 1000 hcboxplot var df cate
  • 监听网络端口并将数据保存到文本文件[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 linux中有没有一些简单的方法来监听网络上的数据并将它们保存到文本文件中 谢谢 Netcat 是您的
  • AngularJS 指令 $destroy

    我有一个有角度的应用程序设置ng view 在一个视图中 除了视图本身之外 该视图内部还有一个动态加载的组件 该组件是一个指令 本质上是编译内容 因此内容可以进一步与其他指令挂钩 确实如此 该组件内的内容是使用编译的 compile ele
  • Delphi中如何读取JPendingIntent?

    如何阅读deliveryIntent在这段代码中 uses Androidapi JNI JavaTypes Androidapi JNI Telephony procedure TForm1 Button1Click Sender TOb
  • 我想将 javascript 变量分配给 javascript 内的 html 元素

    我试图在 javascript 内的 html 元素中插入 javascript 变量值 但它无法正常工作 以下是我的代码 window onload function var image document getElementById i
  • 如何在打字稿中正确创建和导入节点模块

    如何在打字稿中创建要导入到其他打字稿文件中的节点模块 我搜索了又搜索 但找不到如何正确执行此操作 我想创建一个 typescript 模块 导出一些可以使用 require 导入到我的 app ts 中的函数 我正在使用 typescrip
  • 为什么 ListView.ScrollIntoView 不起作用?

    我试图滚动到视图中 以便始终显示垂直列表中的最后一项 但 ListView ScrollIntoView 永远不会工作 我努力了 button1 Click object sender EventArgs e activities Add
  • docker容器中arangodb数据备份策略

    我想备份 arangodb 数据 以防 arangodb 在 docker 容器中运行 arangodb 的数据作为卷安装到主机系统 一种解决方案是创建一个 docker 映像 基于官方 arangodb 映像 其中包含用于备份的脚本阿兰戈
  • 如何解锁或删除无意中使用存储桶策略锁定的 AWS S3 存储桶?

    我是 AWS 账户所有者 admin IAM 和 root 密码 我知道不推荐 但有一些依赖 root 密码的遗留应用程序 我最近添加了一个存储桶策略 该策略随后使存储桶锁定为我无法访问 aws s3 rb s3
  • 多维 NumPy PolyFit 和 PolyVal?

    假设一个 n 维观测值数组被重塑为一个 2d 数组 其中每一行都是一个观测值集 使用这种重塑方法 np polyfit可以计算整个 ndarray 矢量化 的二阶拟合系数 fit np polynomial polynomialpolyfi
  • Accepts_nested_attributes_for 导致 SQLException

    我想用accepts nested attributes for创建一个 Article 对象has many部分 class Article lt ActiveRecord Base has many sections order gt