Rails 中使用 dm-accepts_nested_attributes 和 dm-is-tree 的 2 个模型的嵌套形式

2024-01-12

我有两个模型:论坛应用程序中的帖子和图像,其中帖子使用 dm-is-tree 以父子格式排列。到目前为止,这些图像已经成为 Post 模型的一部分。由于 Post 模型变得笨拙,并且我需要添加更多深度来标记图像,我正在努力将图像分离到它自己的模型中,但仍然是输出中帖子的一部分。

因此,我开始以简单的方式集成 dm-accepts_nested_attributes:

class Post
  include DataMapper::Resource

  property :id, Serial                                     
  property :istop, String                                   
  property :created_at, DateTime                            
  property :updated_at, DateTime                            
  property :content, Text                                   

  has n, :images                                           
  accepts_nested_attributes_for :images                    

  is :tree, :order => [:istop, :created_at]

class Image

  include DataMapper::Resource

  property :id, Serial
  property :created_at, DateTime

  belongs_to :post

  property :image, String, :auto_validation => false        # Carrierwave image info
  mount_uploader :image, ImageUploader                      # Carrierwave uploader

我在每个页面上都有这个表单(haml)用于创建帖子:

 = form_for [@forum,Post.new], :html => {:multipart => true} do |f|
  = f.hidden_field :istop, :value => "parent"
  = f.text_area :content
  = f.fields_for :simages_attributes do |g|
   = g.file_field :image
  .actions
   = f.submit

这适用于这个控制器:

def create
    @forum = Forum.get(params[:forum_id])
    @post = @forum.posts.create(params[:post])

    respond_to do |format|
      if @post.save
        format.html { redirect_to(forum_path(@forum), :notice => 'Post was successfully created.') }
      else
        format.html { redirect_to(forum_path(@forum), :notice => 'There was an error in posting') }
      end
    end
  end

我发帖时遇到的错误:

undefined method[]' 为#`

, 无方法错误

我现在不确定我在做什么或者这是从哪里来的。我不确定我的表单设置是否正确(我一直在关注类似的活动记录教程,但还没有深入研究 dm-accepts_nested 代码)。我可以通过命令行设置一些更基本的东西,但不能设置图像。我了解嵌套的基础知识,但并不真正了解如何将其集成到我正在做的自动取款机中。

也许有人知道。任何帮助表示赞赏。


attr_accessor :Post模型中的images_attributes,允许表单提交

但是,图像现在没有被保存,即丢失在某处并且没有被保存

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

Rails 中使用 dm-accepts_nested_attributes 和 dm-is-tree 的 2 个模型的嵌套形式 的相关文章

  • Ruby on Rails 3 - 为每个请求重新加载 lib 目录

    我正在为 Rails 3 应用程序创建一个新引擎 正如您所猜测的 该引擎位于我的应用程序的 lib 目录中 但是 我在开发它时遇到了一些问题 事实上 每次更改引擎中的某些内容时 我都需要重新启动服务器 有办法避免这种情况吗 我可以强制rai
  • save_and_open_page 已停止提供我的 CSS

    我的测试设置工作得很好 每当我打电话时 都能提供正确格式的 css 页面save and open page从测试中 然后 我设置了一些 javascript 测试 并对我的设置进行了一些更改 抱歉 我无法详细说明所有内容 我没有足够详细地
  • 如何在 gem 的示例脚本中使用 pry-byebug ?

    我正在制作我的第一个 gem 它不是 Rails 应用程序 而是一个带有一些 AI 的 tic tac toe 库 这样我就可以与一个永远不会输的计算机对手比赛 并在可能的情况下强行获胜 现在我正在尝试调试人工智能中的攻击策略 但我似乎无法
  • Ruby mp3 Id3 解析

    目前我正在从事一个音乐项目 处理用户 mp3 上传 问题是我找不到适用于所有文件的 id3 库 我努力了id3 ruby and Mp3Info库 但它们都没有给我一致正确的结果 例如 最常见的问题 错误的流参数 比特率和采样率 有时是持续
  • 更改迁移中的自动​​增量值(PostgreSQL 和 SQLite3)

    我有一个托管在 Heroku 上的项目 想要更改表的自动增量起始值 我在本地使用 SQLite3 Heroku 使用 PostgreSQL 这是我在迁移中所拥有的 class CreateMytable lt ActiveRecord Mi
  • 如何在 sunspot solr 中进行简单的布尔查询

    gt gt gt marketing User search do s gt gt gt s fulltext Marketing gt gt gt end gt gt gt marketing total 1448 gt gt gt sa
  • Rails Capistrano 3 - 如何将 production.log 文件共享到 Capistrano 的共享文件夹中?

    我正在使用 Capistrano 3 与我的 Rails 应用程序一起部署 问题是 每次我将应用程序部署到服务器时 log development log 文件都会重置 我听说可以将 production log 文件放入共享文件夹中并在每
  • ||= 是什么意思? [复制]

    这个问题在这里已经有答案了 我的应用程序控制器中有一个受保护的方法 def current user current user User find by id session user id end 我想知道什么 方法 我一直在努力寻找和找
  • 回形针不支持 .doc 文件

    在 Rails 4 0 2 中 我使用回形针 gem 上传文件 但它不支持 doc 文件 在文件上传字段下方 显示一条错误消息 扩展名与其内容不匹配 在模型中 检查内容类型的验证如下 validates attachment content
  • 在 Web 应用程序中显示最新的提交值?

    我有一些 Rails 应用程序 我使用 Git 作为版本控制系统 我使用 GitHub 或 Beanstalk 作为存储库主机 从理论上讲 我想要做的事情非常简单 以某种方式在 Web 应用程序的页脚中显示最新的提交 ID 号 哈希值 这样
  • ActiveRecord:向包含的 ON 子句添加条件

    我有一个模型报价和另一个历史报价 一个报价有很多历史报价 现在 我想立即加载一组报价的某一天的历史报价 如果存在 为此 我认为我需要将这一天传递给 ON 子句 而不是 WHERE 子句 以便我获得所有报价 即使在给定日期没有历史报价时也是如
  • 通过 ESI:include 设置 Cookie,如何?

    我正在尝试使用 esi 在我的网站上创建忍者缓存 这个想法是 该网站大部分是静态的 我只需要在用户是否登录时做一些花哨的事情 所以我试图在页面A上放置一个 并在页面B的应用程序中设置触发器 这样我就可以将页面 A 缓存在 varnish 上
  • Rails 5:验证复选框的接受

    我有一个带有一些嵌套字段的注册表单 在该表单中我添加了一个服务条款的复选框 我正在尝试验证复选框何时被选中 如果没有 则返回错误 validates acceptance of agreement allow nil gt true acc
  • Rails 从 OrdersController 更新用户模型的属性

    这是我的代码 订单控制器类 def create order Order new params order if order purchase work GATEWAY store credit card options result wo
  • Capybara-webkit 无法处理与 bootstrap glyphicon 的链接

    我有一个链接 link to q span class glyphicon glyphicon trash span html safe feed item data confirm Are you sure toggle tooltip
  • 检查rails devise ldap gem中的组成员身份,是否在yaml中?

    我是否应该使用 ldap yml 文件来确保使用 ldap 进行身份验证的人拥有分配给他们的正确组以允许他们进入 无论如何 我都不是 AD 专业人士 这让我很困惑 什么是组和属性 据我了解 我们在 AD 中有一个用户 他们有一个 samAc
  • 如何使用 Ruby on Rails 3 检查 HTTP 请求的“Content-Length”字段?

    我正在使用 Ruby on Rails 3 在我的视图文件中我有以下代码 为了避免服务器过载 我会在服务器接收上传文件之前检查上传文件的大小 这是因为 按下表单的提交按钮 服务器会先完整接收文件 然后再检查文件 我知道一个HTTP 请求有标
  • Emacs、ruby:将 do 结束块转换为大括号,反之亦然

    我经常发现自己转换这样的代码 before do something end to before something 有没有办法在 emacs 中自动执行此任务 我使用 ruby mode 和 rinary 但它们在这里没有太大帮助 rub
  • puma systemd 脚本无法启动 puma

    我已经从多个来源复制并粘贴了以下美洲狮系统启动脚本的片段 但它不起作用 系统是Debian 9 6 用户rails红宝石通过安装rvm 用户rails可以启动命令RAILS ENV production bundle exec puma C
  • 如何以 Rails 形式将图像从 上传到具有 Rails Active Storage 的 S3?

    正如标题中所述 我正在尝试使用 Rails 的 Active Storage 从嵌套在 Rails 表单中的元素将图像上传到我的 S3 存储桶 到目前为止我已经能够使用使用 Active Storage 上传图像 这User class h

随机推荐

  • MAX 使用 gcc 的 typeof 扩展

    我已经用 C 编程有一段时间了 所以我决定学习一些高级 C 我听说过 gcc 编译器扩展 下面我看到了 MAX 的代码 到目前为止我已经实现如下 define MAX x y x gt y x y 这是我找到的新定义 不幸的是我什至不明白下
  • 从 Java 调用 python

    我正在为公司的内部工具包构建前端 一半的工具是用 python 编写的 另一半是用其他几种脚本语言编写的 所以我正在使用 swing 在 java 中构建前端 到目前为止 我可以通过以下代码调用 python 脚本 public class
  • Android 推送通知在应用程序关闭时不起作用

    我在用着OkSse https github com heremaps oksse订阅我的服务器发送事件 每当服务器发送新消息时 无论应用程序是否处于运行状态 都应该出现通知前景 最小化或完全关闭 通知按预期工作最小化或在前台但当全封闭 这
  • 如何使用 .htaccess 拒绝除一个目录名之外的所有目录名?

    我有这个 htaccess 文件 我可以在其中阻止用户从浏览器物理访问文件 它们只能通过系统加载 Options Indexes Order deny allow deny from all 但我有一个问题 有时我通过 AJAX 加载文件
  • 使用 Activerecord 对多列求和

    我是 Activerecord 的新手 我想对模型学生的多列进行求和 我的模范学生如下 class Student lt ActiveRecord Base attr accessible class roll num total mark
  • Java 不是异步做事吗?

    我正在尝试学习 Java 我正在阅读一个教程 内容如下 while N lt 0 TextIO put The starting point must be positive Please try again N TextIO getlnI
  • 如何将 xlsx 或 xls 文件读取为 Spark 数据帧

    谁能告诉我在不转换 xlsx 或 xls 文件的情况下我们如何将它们读取为 Spark 数据框 我已经尝试使用 pandas 进行读取 然后尝试转换为 Spark 数据帧 但出现错误 错误是 Error Cannot merge type
  • OpenCV Python QueryFrame 函数泄漏内存

    我正在使用Python接口用于OpenCV 2 2 0 以下代码可以正确地从视频文件中抓取帧 for f in range 1 frameCount grab the left and right frames frameL cv Quer
  • 如何使用jquery Ajax数据操作

    我试图弄清楚在 Ajax 调用中使用什么以及如何使用 data 参数 问题是我不确定数据调用中的 操作 部分应该做什么 它是控制器中的一个动作吗 如果是 我该如何正确引用它 var data action get all users dat
  • Mono 随机 CS0006 编译错误 w/fastcgi-mono-server4

    我正在尝试使用 mono 2 10 8 1 w fastcgi mono server4 在我的 Linux 服务器上部署在 Mono OSX 上开发的 ASP MVC 项目 Web 应用程序总是启动正常 但随后我开始收到各种 URI 的随
  • OSX 上的 scp 不允​​许用户名中包含空格?

    我需要 ssh 进入正在运行的 Windows 7 机器MobaSSH http mobassh mobatek net 作为其 SSH 守护进程 Windows 框中的用户名包含空格 我可以在 OSX 终端上登录 Windows 7 盒子
  • 如何在 javascript/nodejs (ES6) 中创建静态函数/对象

    我想使用 Javascript Node JS 创建一个静态类 我使用谷歌但我找不到任何有用的例子 我想在 Javascript ES6 中创建类似这样的东西 C public static MyStaticClass public sta
  • 如何在apache tomcat中查找Web应用程序的内存使用情况

    我正在开发一个项目 需要查找部署在 Apache tomcat 中的 Web 应用程序的内存使用情况 在 Intranet 架构中 我想开发一个工具来查找访问已部署的 Web 应用程序及其正在使用的内存的用户 有人可以帮助我开始这个项目吗
  • Angular 7 测试:NullInjectorError:没有ActivatedRoute 的提供者

    您好 测试我用 Angular 7 制作的应用程序时出现一些错误 我在 Angular 方面没有太多经验 所以我需要您的帮助 Error StaticInjectorError DynamicTestModule BeerDetailsCo
  • 如何动态翻译 html5 占位符

    我正在使用 Angular translate 将页面内容翻译成不同的语言
  • 形状 (None, 1) 和 (None, 3) 不兼容,多类分类

    所以我有多类分类 我想编译我的模型 feature layer DenseFeatures feature columns A layer that produces a dense Tensor model Sequential feat
  • 该名称在当前上下文中不存在

    我的 asp net 3 5 应用程序中有一个母版页 并且有一些控件和 jquery 内容 我尝试访问代码隐藏中的控件 它说 The name DrpStates does not exist in the current context
  • Java中如何解析这个字符串?

    前缀 dir1 dir2 dir3 dir4 如何解析dir1 dir2Java 中上述字符串的值 这里的前缀可以是 usr local apache2 简历 如果你想分割String at the 性格 String split http
  • C# 我应该手动删除我声明的事件处理程序吗?

    好吧 在这里举个例子 我有 UserControl A UserControl B UserControl C 和一个 Windows 窗体 此 Windows 窗体仅由 UserControl A 启动 UserControl C 有 下
  • Rails 中使用 dm-accepts_nested_attributes 和 dm-is-tree 的 2 个模型的嵌套形式

    我有两个模型 论坛应用程序中的帖子和图像 其中帖子使用 dm is tree 以父子格式排列 到目前为止 这些图像已经成为 Post 模型的一部分 由于 Post 模型变得笨拙 并且我需要添加更多深度来标记图像 我正在努力将图像分离到它自己