gpt4 book ai didi

ruby-on-rails - Ruby on rails form_for 和不可数模型

转载 作者:行者123 更新时间:2023-12-04 05:52:56 26 4
gpt4 key购买 nike

<% form_for(@software) do |f| %>

正在生成一个如下所示的表单标签:
<form action="/software.%23%3Csoftware:0x24b2eac%3E" ...

软件模型有点特别,因为我使它不可数(软件不适合我)
environment.rb:
ActiveSupport::Inflector.inflections do |inflect|
inflect.uncountable %w( software )
end

但我确实命名了一个单数形式来使路线工作
map.resources :software, :singular => :software_item

像这样修改 form_for :
<% form_for(@software, :url => software_item_path) do |f| %>

产生正确的输出,所以也许我会以错误的方式处理整个不可数的事情?通常是否有更好的方法使用具有相同单复数词的模型?

最佳答案

我知道这个问题已经很老了,但我在 Rails 4.1 上遇到了类似的问题。
根据Inflection doc , inflect.uncountable应该定义:

[...] uncountable words that shouldn't be attempted inflected.



然而,由于某种原因,这是不够的(我将深入研究源代码,并在有时间时看看发生了什么)

无论如何,使用 inflect.irregular而不是 inflect.uncountableconfig/initializers/inflections.rb似乎可以解决问题
ActiveSupport::Inflector.inflections(:en) do |inflect|
inflect.irregular 'software', 'software'
end

关于ruby-on-rails - Ruby on rails form_for 和不可数模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3981858/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com