Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails 5仅在字符串存在时才从字符串中删除空白_Ruby On Rails - Fatal编程技术网

Ruby on rails rails 5仅在字符串存在时才从字符串中删除空白

Ruby on rails rails 5仅在字符串存在时才从字符串中删除空白,ruby-on-rails,Ruby On Rails,我有一个rails 5应用程序,我有一个名称字段(字符串)和一个压缩名称(字符串) 当用户注册时,他们输入他们的公司名称,我试图压缩名称,如下所示: “我的公司名称在此”-名称 进入 “mycompanynamehere”-压缩名称 我在帐户模型上使用它作为一个事后初始化调用 def compress_name self.compressed_name = name.downcase.split.join end 问题是,如果名称字段中没有空格,它只会将压缩的\u name保留

我有一个rails 5应用程序,我有一个名称字段(字符串)和一个压缩名称(字符串)

当用户注册时,他们输入他们的公司名称,我试图压缩名称,如下所示:

“我的公司名称在此”-名称

进入

“mycompanynamehere”-压缩名称

我在帐户模型上使用它作为一个事后初始化调用

  def compress_name
    self.compressed_name = name.downcase.split.join
  end
问题是,如果名称字段中没有空格,它只会将
压缩的\u name
保留为
nil

有没有更好的方法来处理这个问题

提前感谢

尝试下面的一个,测试

2.4.2 :013 > "My Company Name Here".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 
2.4.2 :014 > "My CompanyNameHere".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 
2.4.2 :015 > "MyCompanyNameHere".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 
2.4.2 :016 > "mycompanynamehere".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 
试试下面一个,测试一下

2.4.2 :013 > "My Company Name Here".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 
2.4.2 :014 > "My CompanyNameHere".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 
2.4.2 :015 > "MyCompanyNameHere".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 
2.4.2 :016 > "mycompanynamehere".gsub(/\s+/, "").downcase
 => "mycompanynamehere" 

拆下砰的一声
打开
。关机。“它在帐户上回滚”是什么意思?它会阻止验证并导致异常?是的,如果名称字段中没有空格,它就不会转换名称,并在数据库中将其设置为nil。。我会在整理回滚问题时更新问题。删除bang
打开
。关机。“它在帐户上回滚”是什么意思?它会阻止验证并导致异常?是的,如果名称字段中没有空格,它就不会转换名称,并在数据库中将其设置为nil。。我会在整理回滚问题时更新问题