Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/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
Rails-条件html属性_Html_Ruby On Rails_Conditional - Fatal编程技术网

Rails-条件html属性

Rails-条件html属性,html,ruby-on-rails,conditional,Html,Ruby On Rails,Conditional,环顾文档,我看不出正确的方法。下面是一个使用未重构代码的示例: = link_to user.name, user, :meta => "#{user.public? ? '' : 'nofollow noindex'}" 现在,这可能与任何html属性相同,其结果是,在条件未通过的情况下,由于标记为空,我没有有效的XHTML <a href='/users/mark' meta=''>Mark</a> 如何使属性定义有条件,而不仅仅是它的值。使用nil而不

环顾文档,我看不出正确的方法。下面是一个使用未重构代码的示例:

= link_to user.name, user, :meta => "#{user.public? ? '' : 'nofollow noindex'}"
现在,这可能与任何html属性相同,其结果是,在条件未通过的情况下,由于标记为空,我没有有效的XHTML

<a href='/users/mark' meta=''>Mark</a>


如何使属性定义有条件,而不仅仅是它的值。

使用
nil
而不是空字符串:


=链接到user.name,user,:meta=>user.public?nil:“nofollow noindex”

这个问题已经得到了回答,但我想提到一个特殊情况,在这种情况下,
drasbo
的方法不起作用

如果要使属性的存在具有条件。说出
输入[type=checkbox]
的选中属性

checked属性的存在造成了差异,令人遗憾的是,浏览器往往会忽略它的值

不幸的是,它不适用于HAML语法。为此,您需要退回到标准HTML标记:

%form
  <input type="checkbox" "#{@post.tags.include?("Special Blog")? "checked" : ""}" />
  %button
    Click Me
%表单
%钮扣
点击我