Ruby on rails 未定义的方法`匹配';零级:零级
我试图从文本框中删除任何不在Ruby on rails 未定义的方法`匹配';零级:零级,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,我试图从文本框中删除任何不在[]之间的内容。这适用于编辑记录表单: <%= f.text_field :transport_relay, :value => f.object.transport_relay.match(/\[(.*?)\]/)[1] %> 解决了错误问题,但在此过程中删除了输入文本框。您希望if仅应用于:value参数,而不是整个f.text\u字段。将()放在:value周围 <%= f.text_field :transport_relay,
[]
之间的内容。这适用于编辑记录表单:
<%= f.text_field :transport_relay, :value => f.object.transport_relay.match(/\[(.*?)\]/)[1] %>
解决了错误问题,但在此过程中删除了输入文本框。您希望if
仅应用于:value参数,而不是整个f.text\u字段。将()放在:value周围
<%= f.text_field :transport_relay, :value => (f.object.transport_relay.match(/\[(.*?)\]/)[1] if f.object.transport_relay) %>
(f.object.transport\u relay.match(/\[(.*?\])/)[1]如果f.object.transport\u relay)%>
您希望if
仅应用于:value参数,而不是整个f.text\u字段。将()放在:value周围
<%= f.text_field :transport_relay, :value => (f.object.transport_relay.match(/\[(.*?)\]/)[1] if f.object.transport_relay) %>
(f.object.transport\u relay.match(/\[(.*?\])/)[1]如果f.object.transport\u relay)%>
你可以这样写
<%= f.text_field :transport_relay, :value => f.object.transport_relay.nil? ? nil:f.object.transport_relay.match(/\[(.*?)\]/)[1] %>
f.object.transport\u relay.nil?nil:f.object.transport\u relay.match(/\[(.*?\])/)[1]>
但我认为,如果你将这种逻辑提取到你的模型中会更好
def transport_relay_value
transport_relay.nil? nil:transport_relay.match(/\[(.*?)\]/)[1]
end
<%= f.text_field :transport_relay, :value => f.object.transport_relay_value %>
def传输继电器值
交通接力,零?无:传输中继。匹配(/\[(.*?\]/)[1]
结束
f、 object.transport\u中继\u值%>
你可以这样写
<%= f.text_field :transport_relay, :value => f.object.transport_relay.nil? ? nil:f.object.transport_relay.match(/\[(.*?)\]/)[1] %>
f.object.transport\u relay.nil?nil:f.object.transport\u relay.match(/\[(.*?\])/)[1]>
但我认为,如果你将这种逻辑提取到你的模型中会更好
def transport_relay_value
transport_relay.nil? nil:transport_relay.match(/\[(.*?)\]/)[1]
end
<%= f.text_field :transport_relay, :value => f.object.transport_relay_value %>
def传输继电器值
交通接力,零?无:传输中继。匹配(/\[(.*?\]/)[1]
结束
f、 object.transport\u中继\u值%>
试试这个:def nil.match;nil end
试试这个:def nil.match;nil end
这里有一个很好的名字叫和gem来处理这个问题(“nil:NilClass的未定义方法`any_method')。这里有一个很好的名字叫和gem来处理这个问题(“nil:NilClass的未定义方法`any_method')。对我来说非常有效:)。谢谢你们的投入和所花的时间。这对我来说非常有用:)。感谢大家的投入和花费的时间。