Rails:成分的未定义方法“map”

2023-12-27

完全的 Rails 新手正在尝试入门。

我有两个课程,成分和单位。有磅、加仑和几十三种单位,每种成分只有一个单位。我认为我正确设置了关联/路线。 创建新成分时,我需要要求用户设置这三个单位。 我用另一个问题来说明这一点:下拉框 - 用表单中另一个表的数据填充 - Ruby on Rails https://stackoverflow.com/questions/1663499/drop-down-box-populated-with-data-from-another-table-in-a-form-ruby-on-rails

成分型号:

class Ingredient < ActiveRecord::Base
  belongs_to :unit
end

单位型号:

class Unit < ActiveRecord::Base
end

Routes:

  map.resources :ingredients, :has_many => :unit_conversions
  map.resources :units, :has_many => :ingredients

成分 新控制器

def new
    @ingredient = Ingredient.new

    respond_to do |format|
      format.html # new.html.erb
      format.xml  { render :xml => @ingredient }
    end
  end

成分新观点:

<h1>New ingredient</h1>

<% form_for(@ingredient) do |f| %>
  <%= f.error_messages %>

  <p>
    <%= f.label :name %><br />
    <%= f.text_field :name %>
  </p>
  <p>
    <%= f.label :needsDefrosting %><br />
    <%= f.check_box :needsDefrosting %>
  </p>
  <p>
   <%= f.label :baseName %>
   <%= f.collection_select :unit_id, @ingredient, :id, :baseName, :prompt => "Select a Base Measurement"%>
   <br />
  </p>
  <p>
    <%= f.submit 'Create' %>
  </p>
<% end %>

<%= link_to 'Back', ingredients_path %>

错误是

 NoMethodError in Ingredients#new

Showing app/views/ingredients/new.html.erb where line #16 raised:

undefined method `map' for #<Ingredient:0x3dae1c0>

Extracted source (around line #16):

13:   </p>
14:   <p>
15:    <%= f.label :baseName %>
16:    <%= f.collection_select :unit_id, @ingredient, :id, :baseName, :prompt => "Select a Base Measurement"%>
17:    <br />
18:   </p>
19:   <p>

RAILS_ROOT: C:/Users/joan/dh

我只深入了解 RoR 大约三天,所以我怀疑这很简单!


collection_select 需要一个选项数组,您正在传递一个成分。将 @ingredient 更改为 Unit.all 应该可以修复它。

%= f.collection_select :unit_id, Unit.all, :id, :baseName, :prompt => "Select a Base Measurement"%>

附带说明一下,如果您只需要 3 种类型的单位,那么创建一个常量而不是一个单位表可能更有意义。这将减少连接数量并使整体模型变得更简单。

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

Rails:成分的未定义方法“map” 的相关文章

  • 使用 Figaro 和 Secrets.yml 管理环境变量

    我有一个 Rails 4 1 应用程序 我正在尝试组织我的环境变量 截至目前 我的 config 文件夹中有一个 Secrets yml 文件 我还安装了费加罗宝石 我的目标是将所有环境变量放在 application yml 未签入 gi
  • 获取类别和子类别的所有产品(rails、awesome_nested_set)

    正在开发一个电子商务应用程序 我试图解决以下问题 我通过 Awesome nested set 插件实现了我的类别 如果我通过选择一个类别列出我的文章 一切正常 但对于某些链接 我想显示一个类别的所有产品及其子类别的产品 这是仅适用于一种类
  • 如何在 jQuery.ui.autocomplete 中的自动完成弹出窗口下方添加所有搜索的链接?

    我有使用 jQuery UI 自动完成插件的搜索建议自动完成功能 http jqueryui com autocomplete http jqueryui com autocomplete 但是如何添加结果弹出项目的底部 其行为类似于 Qu
  • 国家/地区的下拉菜单

    您好 我想为国家和州实现下拉菜单 州下拉列表应根据所选国家 地区更改其值 有没有任何插件或 gem 可以在 Rails 中执行此操作 尝试卡门插件 http autonomousmachine com posts 2009 4 1 carm
  • 如何在 Rails 中对不同用户建模

    Question 我有一个带有内置授权和身份验证逻辑的用户模型 现在我意识到我拥有三种不同类型的用户 我想存储每个人的不同信息 Rails 中处理这个问题的最佳方法是什么 基于当前阅读的想法 我看过 STI 但从我读到的内容来看 它是不合适
  • 在 Rails 6 上添加外部 js 文件

    我在 app gt javascript gt packs 下创建了一个名为 custom 的文件夹 并放置以下外部 js metisMenu min js startmin js 然后在 app gt javascript gt pack
  • 在 Rails 中使用 config.assets.precompile 将资源包含在子目录中

    我有一个在 Heroku 上运行的 Rails 3 1 3 应用程序 通过 S3 进行资产托管asset sync 包含在我的app assets css目录是一个包含两个文件的子目录 main css scss and categorie
  • Mac 上的 libv8 (3.11.8.17) 捆绑包安装错误

    我将 ruby 升级到 1 9 3 现在我无法启动我的服务器 当我运行捆绑安装时 它说 An error occurred while installing libv8 3 11 8 17 and Bundler cannot contin
  • 如何在Rails 中使用highlight.js?

    我正在尝试在我的 Rails 应用程序中使用语法突出显示和highlight js height js 的说明如下 https github com isagalaev highlight js https github com isaga
  • 将用户输入转换为整数

    所以我有一个用户可以输入价格的表格 我正在尝试创建一个 before validation 来规范化数据 如果用户放置 则剪裁它 before validation do unless self price blank then self
  • aws-s3 gem 和 right_aws gem 之间的 Rails Paperclip 冲突。怎么解决?

    对于新应用程序 我想使用回形针将文件存储到 S3 我已经为另一个应用程序安装了 aws s3 gem 这似乎会导致一些问题 因为 Paperclip 应该使用 right aws 但正在尝试使用 aws s3 gem 但我不想从我的系统中删
  • 日期时间到时间转换中奇怪的 Ruby 行为

    我的目标是从 DateTime 实例获取 Time 实例 这已经在这里讨论过 但我仍然很困惑 在 Ruby 中与日期时间和时间相互转换 https stackoverflow com questions 279769 convert to
  • rake db:migrate 到底做了什么?

    rake db migrate 是否仅添加新的迁移 还是会删除所有迁移 更改并构建所有新内容 我认为 rake 抛出错误 因为它试图访问迁移 040 中的表属性 该属性已在迁移 042 中删除 不知何故 我的数据库和 rake 不同步 我想
  • HAML:form_tag 困境(缩进?)

    我正在制作 用户设置表单 并坚持使用 HAML form tag 1 2 3 each do i check box tag accept i submit tag 这会导致 语法错误 意外的 kENSURE 期望 end 工作变体是 fo
  • 在 Rails 中捕获 UTM 参数

    我正在尝试捕获 URL 中的 UTM 参数 以将源 营销活动等添加到用户帐户 可悲的是 我似乎不知道如何捕获这些参数 据我所知 我正在关注博客文章http www matthuggins com articles tracking new
  • 如何修复 PagesController#home 缺少请求格式模板:text/html

    对于我的 Rails 6 应用程序routes rb I have Rails application routes draw do root pages home end 并在我的pages controller rb I have cl
  • Rails 6 中的protect_from_forgery?

    The protect from forgery方法不包含在默认 Rails 6 应用程序的应用程序控制器中 但有嵌入式 ruby在主应用程序布局中 这是否意味着protect from forgery方法已被抽象并且在应用程序控制器中不再
  • 通过 Devise 将 Discourse SSO 与现有 Rails 站点相结合

    我有一个现有的 Rails 应用程序 它使用 devise 作为用户身份验证 我添加了一个话语论坛 http www discourse org一切都很顺利 它驻留在子域上 我已阅读该帖子https meta discourse org t
  • 通过子对象的最大字段值查找 ActiveRecord 对象?

    如何找到与 ActiveRecord 计算结果关联的对象而不是值 例如 我有 parent 它有很多孩子 我想找到具有最大 价值 的孩子 我知道我可以做 parent children maximum value 但这会返回最大值 是否有类
  • 在控制器中调用模型方法

    我在这里遇到了一些困难 我无法成功调用属于ProjectPage model in the ProjectPage 控制器 我在我的ProjectPage控制器 def index searches Project published fi

随机推荐

  • 在android中使用Activity的有效方法是什么

    我只是想问什么是有效的使用活动的方式 意味着将一项活动用于多种功能 或者将多项活动用于每种功能 在我的应用程序中 工作类似于类别 gt 子类别 gt 产品列表 其中方向改变设计并且还需要消耗以前的功能状态用于返回 Thanks 根据活动文档
  • Selenium 等待 Ajax 内容加载 - 通用方法

    Selenium 是否有一种通用的方法来等待所有 ajax 内容加载完毕 不绑定到特定网站 所以它适用于每个 ajax 网站 您需要等待 Javascript 和 jQuery 完成加载 执行 Javascript 检查是否jQuery a
  • 从 URI 获取图像宽度和高度

    是否可以从图像文件的 URI 获取其宽度和高度 我试图使用这段代码 但出现了错误 getAbsolutePath 之后有语法错误 标记 上存在语法错误 ArgumentList 无效 private void getDropboxIMGSi
  • Iphone 上的 OpenGL ES - 显示和旋转 3D 对象

    我是 Iphone Xcode 和 openGL ES 的新手 我正在寻找一个源代码示例 演示如何创建 3D 对象 用手势旋转它以及放大 缩小 谢谢 亚历克斯 以下是如何显示和旋转使用 Blender 创建的 3D 模型的简单示例 http
  • nextjs链接组件插值错误

    我在 Next js 中收到此错误 错误 提供的 href subject subject 值缺少要正确插入的查询值 subject 阅读更多 https err sh vercel next js href interpolation f
  • 使用 static const 结构对相关的类常量进行分组 (C++11)

    使用以下 A 的缺点是什么 h class SomeClass static const struct ConstantGroup int a 1 string b b etc CONSTANT cpp const SomeClass Co
  • 如何在android中的视图上方添加阴影

    我有一个观点 那就是作为页脚标题来服务 它只是一个视图 您可能会将其视为按钮 文本视图或布局 我对任何事物都持开放态度 这是 XML
  • Ruby 类:初始化 self 与 @variable

    有人可以解释在定义类时初始化 self 和使用 variables之间的区别吗 这是一个例子 class Child lt Parent def initialize self stuff self stuff stuff super en
  • 如何安装 Six.moves.xmlrpc_client?

    我正在从 openstack 复制一些代码片段 但是当它运行时 import six moves xmlrpc client as xmlrpclib 我收到以下错误 import six moves xmlrpc client as xm
  • ItemizedOverlay 和 Overlay 类之间的区别

    有人可以告诉我何时使用 Overlay 或何时使用 Itemized Overlay 类 这两个类有什么区别 绘制方法做同样的事情吗 我可以在我的项目中仅使用 ItemizedOverlay 类吗 或者我必须使用 Overlay 作为基类
  • 如何排除故障:对“非虚拟 thunk to ...”的未定义引用

    我正在尝试找出如何进一步解决此问题 我还想知道如何安装更新版本的 ld 如果有意义的话 所有参与的包管理器都告诉我我是最新的 该代码在 ubuntu 12 04 和 12 10 上使用 g 4 7 2 进行编译 链接和运行 但在 FC17
  • 使用 Ignore.NotFound 延迟加载 NHibernate

    我有一个 Candidate 对象的映射 如下所示 References x gt x Country Column CountryId NotFound Ignore 这里的问题是 如果我选择 Candidates 我会为每个人获得一个额
  • 如何重新运行失败的测试并为 python3 py.test 设置重试

    我有一些与 Web 服务相关的测试 这些测试发送 http 请求 并且响应由 py test 测试用例验证 我通常会在 50 次测试中遇到 1 到 2 次失败 这些测试是由于间歇性缓慢的 Web 服务器响应收集或网络原因而失败 有没有一种方
  • 通过 highcharts 中的配置禁用系列

    我有一个包含多个系列的折线图 当一次查看所有图表时 图表很混乱 所以我想最初隐藏某些系列 我知道我可以通过编程方式关闭系列 但是在初始化图表时有没有办法做到这一点 相信有一个配置选项可以实现这一点 在系列中 设置 visible false
  • SQL Server作业动态调度

    我有一组 SQL Server 作业 我希望它们的时间表是动态的 即我希望下一个运行日期来自表 我尝试过更新next run date in the sysjobschedules表和next scheduled run date in s
  • 当资源路径是相对路径时,无法使用 include 函数

    背景 我目前对 PHP 和动态生成内容非常陌生 我正在使用 PHPStorm 并使用 XAMPP 的 PHP 解释器与 PHPStorm 的内置 Web 服务器相结合 问题 我最近学会了一个非常方便的功能include 有了这个 我现在动态
  • 使用 log4j 进行条件日志记录

    我正在开发的 Web 应用程序偶尔会为某些用户带来数据完整性问题 我想打开跟踪级别日志记录 但由于我们每秒处理 100 个请求 因此跟踪日志记录不可能实现每个请求 log4j 有没有办法能够有条件地记录 换句话说 我希望仅当特定用户发出请求
  • 不使用不等概率进行替换的采样——线性运行时间可能吗?

    在寻找一个更快的加权采样 无需替换 https stackoverflow com questions 15113650 faster weighted sampling without replacement 出现了以下问题 是否有一种算
  • 在 JQuery 中使用 Load() 获取 XML 属性

    我有这段代码 它可以工作 invest port thumb a mouseenter function slider name load this href cName 加载此 XML
  • Rails:成分的未定义方法“map”

    完全的 Rails 新手正在尝试入门 我有两个课程 成分和单位 有磅 加仑和几十三种单位 每种成分只有一个单位 我认为我正确设置了关联 路线 创建新成分时 我需要要求用户设置这三个单位 我用另一个问题来说明这一点 下拉框 用表单中另一个表的