instance method link_to_unless

Ruby on Rails edge

Since edge

Signature

link_to_unless(condition, name, options = {}, html_options = {}, &block)

Creates a link tag of the given name using a URL created by the set of options unless condition is true, in which case only the name is returned. To specialize the default behavior (i.e., show a login link rather than just the plaintext link text), you can pass a block that accepts the name or the full argument list for link_to_unless.

Examples
<%= link_to_unless(@current_user.nil?, "Reply", { action: "reply" }) %>
# If the user is logged in...
# => <a href="/controller/reply/">Reply</a>

<%=
   link_to_unless(@current_user.nil?, "Reply", { action: "reply" }) do |name|
     link_to(name, { controller: "accounts", action: "signup" })
   end
%>
# If the user is logged in...
# => <a href="/controller/reply/">Reply</a>
# If not...
# => <a href="/accounts/signup">Reply</a>

Parameters

condition req
name req
options opt = {}
html_options opt = {}
block block
Source
# File actionview/lib/action_view/helpers/navigation_helper.rb, line 486
      def link_to_unless(condition, name, options = {}, html_options = {}, &block)
        link_to_if !condition, name, options, html_options, &block
      end

Defined in actionview/lib/action_view/helpers/navigation_helper.rb line 486 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActionView::Helpers::NavigationHelper

Type at least 2 characters to search.

Use the arrow keys to navigate results, Enter to open one, Escape to close.

Keyboard shortcuts

/
Focus search
⌘K / Ctrl-K
Command palette
?
This help
Esc
Close