浏览器在Locals#show中返回以下错误:NilClass:Class的未定义方法'model_name'51:52:53:54:这是我的locals_controller.rb(显示Action)defshow@local=Local.find(params[:id])@foods=@local.foods.paginate(page:params[:page])respond_todo|format|format.html#show.html.erbformat.json{renderjson:@local}end结束这里是foods_controller.rb(创建操作)de
另一个RubyonRails新手问题:在我的帖subview中,我想显示作者姓名。post数据库表存储作者id,它与users表中的usersid列相同。该用户在用户表中也有一个用户名列。有了用户id,我该如何获取用户名呢? 最佳答案 User.find(user_id).username是一种方式。如果你有一个belongs_to帖子和用户之间的关系是post.user.username这更像是“Rails方式”。 关于ruby-on-rails-rubyrails:Accessinf
我的模型中有以下方法可以裁剪记录的描述,但由于未知原因截断方法不起作用:defcropped_descriptionnb_words_max=500ifdescription.length>nb_words_maxtruncate(description,:length=>nb_words_max,:separator=>'')+"..."elsedescriptionendend有人看到我做错了什么吗?谢谢。 最佳答案 你用错了,你应该在String上调用这个方法。参见truncate的签名。使用:ifdescription.le
我想知道从has_many中的连接模型中选择属性的最简单/最优雅的方法是什么:通过关联。假设我们有具有以下Item类的Items、Catalogs和CatalogItems:classItem:catalog_itemsend此外,假设CatalogueItems有一个位置属性,并且在任何目录和任何项目之间只有一个CatalogueItem。检索位置属性的最明显但有点令人沮丧的方法是:@item=Item.find(4)@catalog=@item.catalogs.first@cat_item=@item.catalog_items.first(:conditions=>{:cata
我想向我在RefineryCMS引擎中创建的模型添加一个属性。我知道我可以执行以下操作:rails生成迁移AddPartNumberToProductspart_number:string手动将迁移文件从db/migrate移动到vendor/extensions/products/db/migrate但是是否有命令首先将迁移生成到正确的文件夹中?谢谢! 最佳答案 根据@parndt(theleaddeveloperoftheRefineryproject),我上面概述的方法是正确的。
我有三个ActiveRecord模型:Partner、MembershipChannel(这是一个STI模型,继承自Channel)和ChannelMembership(我不负责命名这些模型……)当我通过合作伙伴协会加载ChannelMembership时,我有时(!)以只读记录结束。这是在Rails3.0.9中。相同的代码在2.3.11中没有这种行为。>p=Partner.first>p.channel_memberships.map(&:readonly?)#=>[false,false,false,false,false,false]>p.reload.channel_membe
我正在尝试找到一种优雅的方式来保存约会模型(如下)中称为描述的附加字段。我的模型是这样设置的:classPhysician在我看来,我有复选框设置来保存连接表的数据,但我想滑入一个额外的“描述”字段以与连接一起保存。以下是我的看法:Patients 最佳答案 您可以使用accepts_nested_attributes_for来更新关联属性。在模型中:accepts_nested_attributes_for:appointments,:allow_destroy=>true在View中:引用http://api.rubyonrai
我有一个管理借方和贷方的发票系统。基本上,发票金额是通过其借方总和得出的,余额是通过将其贷方总和减去总金额得出的。我用四个模型来做这个。发票订单项借方信用它的工作方式是通过一个连接模型(行项目),该模型具有一个称为可记录的多态关联。乍一看一切似乎都正常工作。但是,检查行项目表明虽然recordable_id正常显示,但recordable_type为nil。下面是代码的分解:classInvoice:destroyhas_many:debits,:through=>:line_items,:as=>:recordablehas_many:credits,:through=>:line_
我正在构建一个应用程序来为StarWarsRPG生成角色。我添加了Species模型。Species既是单数又是复数,这让我陷入了一个循环。我可以通过使用species_index_path让路由在应用程序中正常工作,但由于某些原因,has_many:characteristics,:through=>:species_characteristics无法正常工作一个方向。例如,我有两个模型在控制台中正确播种(并工作):Characteristics和Species。Characteristics设置如下:classCharacteristic:species_characteristi
这个问题在这里已经有了答案:Rails4-Remove"created_at"and"updated_at"fromrender(2个答案)关闭5年前。我是Ruby的新手,所以这个问题对你来说可能看起来很愚蠢,是的。但还是...我有一个模型组,当我运行这个classGroupsController...然后我收到这样的数组响应:[{"id":1020,"name":"НІ-16-1","has_subgroups":true,"created_at":"2017-09-29T10:14:08.000Z","updated_at":"2017-09-29T10:14:08.000Z"}.