Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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 3 如果变量为空,则默认为_Ruby On Rails 3_Variables - Fatal编程技术网

Ruby on rails 3 如果变量为空,则默认为

Ruby on rails 3 如果变量为空,则默认为,ruby-on-rails-3,variables,Ruby On Rails 3,Variables,目前,我有以下几点: self.profile_pic = user_info['image'] self.birthday = user_extra['birthday'] self.city = user_extra['location']['name'] 有时user\u extra或user\u info变量为空。我想要一个默认值。如何做到这一点 提前感谢, 莫里斯这实际上取决于你想得到的具体程度。是空白还是零?因为这有很大的不同。在Ruby中,空字符串的计算结果不会为false。假设

目前,我有以下几点:

self.profile_pic = user_info['image']
self.birthday = user_extra['birthday']
self.city = user_extra['location']['name']
有时user\u extra或user\u info变量为空。我想要一个默认值。如何做到这一点

提前感谢,


莫里斯

这实际上取决于你想得到的具体程度。是空白还是零?因为这有很大的不同。在Ruby中,空字符串的计算结果不会为false。假设该变量的特定散列为nil,这将起作用

self.profile_pic = user_info['image'] || "default"
self.birthday = user_extra['birthday'] || "default"
self.city = user_extra['location']['name'] || "default"
或者你可以使用三元运算符进行更一般的检查,以确保变量本身不是nil

self.profile_pic = user_info ? user_info['image'] : "default"
self.birthday = user_extra ? user_extra['birthday'] : "default"
self.city = user_extra ? user_extra['location']['name'] : "default"
或者,如果它实际上是空的,而不是空的,像这样的东西

self.profile_pic = user_info.empty? ? "default" : user_info['image']
self.birthday = user_extra.empty? ? "default" : user_extra['birthday']
self.city = user_extra.empty? ? "default" : user_extra['location']['name']

这取决于你所处的确切条件,以及你想在兔子洞下面走多远。:)希望有帮助

这实际上取决于你想得到的具体程度。是空白还是零?因为这有很大的不同。在Ruby中,空字符串的计算结果不会为false。假设该变量的特定散列为nil,这将起作用

self.profile_pic = user_info['image'] || "default"
self.birthday = user_extra['birthday'] || "default"
self.city = user_extra['location']['name'] || "default"
或者你可以使用三元运算符进行更一般的检查,以确保变量本身不是nil

self.profile_pic = user_info ? user_info['image'] : "default"
self.birthday = user_extra ? user_extra['birthday'] : "default"
self.city = user_extra ? user_extra['location']['name'] : "default"
或者,如果它实际上是空的,而不是空的,像这样的东西

self.profile_pic = user_info.empty? ? "default" : user_info['image']
self.birthday = user_extra.empty? ? "default" : user_extra['birthday']
self.city = user_extra.empty? ? "default" : user_extra['location']['name']
这取决于你所处的确切条件,以及你想在兔子洞下面走多远。:)希望有帮助