【问题标题】:before_filter on Model with gsub method使用 gsub 方法对模型进行 before_filter
【发布时间】:2016-09-20 14:13:45
【问题描述】:

我有一个 Customer 模型,它有一个名为 contact_person 的属性。 当创建客户、导入为 CSV 或更新客户时,我想删除“Dhr”。或“Mvr”。如果存在。

目前我有一个方法:

def prefix_name
  params[:customer][:contact_person].gsub("Dhr.", "")
  50.times do
    puts("test")
  end
end

我正在使用 prefix_name 运行:before_filter :prefix_name, only: [:import, :create, :update]

在服务器日志中,我看到正在调用该方法,但它不会更改参数。

【问题讨论】:

  • 你怎么知道 params 没有改变?不是打印test,而是打印params[:customer][:contact_person]

标签: ruby-on-rails gsub


【解决方案1】:

使用gsub! 而不是gsub

params[:customer][:contact_person].gsub!("Dhr.", "")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-13
    • 1970-01-01
    • 2017-12-23
    相关资源
    最近更新 更多