2015-11-20 2 views
2

Метод link_to в качестве которого не отключается: -отключив ссылка link_to не работает, но скрытый link_to работает

<%= link_to edit_cabinet_path(object), remote: true, disabled: true do %> 
     <span class="glyphicon glyphicon-pencil"></span> 
<% end %> 

но если я делать, как показано ниже, который скрывает ссылку

<%= link_to edit_cabinet_path(object), remote: true, style: "display:none;" do %> 
     <span class="glyphicon glyphicon-pencil"></span> 
<% end %> 

Теперь вопрос как отключить этот тип связи с блоком, и в чем причина того, что второй код работает, а во-первых, нет.

ответ

2

Возможно, вы ищете link_to_if. link_to_if делает вашу ссылку доступной только в том случае, если ваше условие проходит.

Ваш код должен быть что-то вроде:

<%= link_to_if false, edit_cabinet_path(object), remote: true do %> 
     <span class="glyphicon glyphicon-pencil"></span> 
<% end %> 

Чтобы сделать его динамичным можно назвать состояние, которое удовлетворяет ли активным или неактивным эту ссылку, что-то вроде:

<%= link_to_if cabinate.active?, 
       "<span class='glyphicon glyphicon-pencil'></span>".html_safe, 
       edit_cabinet_path(object), remote: true %> 

Надежда ответ на свой вопрос ..

1

На самом деле нет disabled атрибут доступен для link_to, только для button_to тег.

Для получения дополнительной информации, пожалуйста, смотрите здесь: http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to

В этом случае, вы можете использовать link_to_if, пожалуйста, посмотрите в это: http://apidock.com/rails/v4.2.1/ActionView/Helpers/UrlHelper/link_to_if

+0

если так, то почему этот код работает <% = link_to "Полная установка", process_work_detail_cabinets_path (work_order: work_order_id, work_detail: work_d etail_id), метод:: post, class: «btn btn-sm btn-primary progasket pull-right», id: «change_work_detail_install», отключено: true%> – codemilan

+0

Что вы подразумеваете под «этим кодом работает»? он скрыт от страницы или вы можете видеть, но когда клик, он ничего не делает? –

+0

Вы упомянули об отключенном attr. не доступен для тега link_to только для тега button_to, но метод link_to, упомянутый выше, в моем комментарии имеет отключенный attr. за работой. Ссылка не скрыта, она отключена. – codemilan