Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.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 在RubyonRails中,我们是否应该将content_用于(:foobar)?_Ruby On Rails - Fatal编程技术网

Ruby on rails 在RubyonRails中,我们是否应该将content_用于(:foobar)?

Ruby on rails 在RubyonRails中,我们是否应该将content_用于(:foobar)?,ruby-on-rails,Ruby On Rails,这是针对Rails 3的,我几乎总是认为(:foo)的content\u后面跟着(:foo)(在haml中): 因此,与其进行两次查找,不如只进行一次查找并使用更长的代码: - title_for_page = content_for(:title_for_page) # is "" when not previously set %title= title_for_page.blank? ? 'Our great website' : "#{title_for_page} - Our g

这是针对Rails 3的,我几乎总是认为(:foo)的
content\u后面跟着(:foo)
(在haml中):

因此,与其进行两次查找,不如只进行一次查找并使用更长的代码:

- title_for_page = content_for(:title_for_page)    # is "" when not previously set
%title= title_for_page.blank? ? 'Our great website' : "#{title_for_page} - Our great website"

??但是如果
content\u for?
被实现为一个散列,那么不管怎样它可能是超级快速的,与
blank?
相比?

找到答案的唯一方法是测试:)

我正在使用
当前?

有趣的是,
blank?
present?
快,不是吗?是时候去探索了


哇,原来
出现了?
只是调用
blank?
并否定它。

找到答案的唯一方法是测试:)

我正在使用
当前?

有趣的是,
blank?
present?
快,不是吗?是时候去探索了


哇,原来
present?
只是调用
blank?
并将其否定。

一行程序来解决问题:

- title_for_page = (c = content_for(:title_for_page)).blank? ? 'Our great website' : "#{c} - Our great website"

解决此问题的一个衬里:

- title_for_page = (c = content_for(:title_for_page)).blank? ? 'Our great website' : "#{c} - Our great website"

标题中有一个输入错误,应该是content_for;)标题中有一个输入错误,应该是content_for;)看起来不错,只是我担心它还引入了一个新的局部变量
c
,它不太明显(与循环使用的
I
相反,循环使用的是非常明显的使用模式),我通常会将这一个字符的变量保留到这种情况下。我同意你的观点,在使用局部变量时应该谨慎,但我认为如果你遵循这条经验法则,你应该很好地去做:)为什么要创建一个新的局部变量?我的目标:
=内容页(:标题页)?“#{yield(:title_for_page)}-我们伟大的网站”:“我们伟大的网站”
看起来不错,只是我担心它还引入了一个新的局部变量
c
,它不太明显(与循环使用的
I
相反,循环使用的是非常明显的使用模式),我通常为这种情况保留这一个字符变量。我同意你的观点,在使用局部变量时应该谨慎,但我认为如果你遵循这条经验法则,你应该很好地去做:)为什么要创建一个新的局部变量?我的目标:
=内容页(:标题页)?“#{yield(:title_for_page)}-我们伟大的网站”:“我们伟大的网站”
- title_for_page = (c = content_for(:title_for_page)).blank? ? 'Our great website' : "#{c} - Our great website"