programing tip

레일에 CSS 클래스 추가 link_to helper

itbloger 2021. 1. 7. 07:42
반응형

레일에 CSS 클래스 추가 link_to helper


다음 코드를 사용하여 CSS를 사용하여 레일 링크의 스타일을 지정하려고합니다.

<%= link_to "Learn More", :controller => "menus", :action => "index", :class => "btn btn-inverse" %>

다음과 같은 링크가 생성 될 것으로 예상합니다.

<a href="menus/" class="btn btn-inverse">Learn More</a>

대신 rails는 이것을 렌더링합니다.

<a href="/menus?class=btn+btn-inverse">Learn More</a>

다른 사람이이 문제를 가지고 있거나 내가 뭘 잘못하고 있는지 알고 있습니까? 헬퍼를 사용하는 대신 앵커 태그를 수동으로 생성하여이 문제를 피할 수 있다는 것을 알고 있지만 CSS 클래스 정보를 헬퍼 자체에 전달하는 방법이 있는지 궁금합니다. Rails 3.2.6을 사용하고 있습니다.

감사!


구문 문제가 있습니다. 대신 이것을 시도하십시오.

<%= link_to "Learn More", {controller: "menus", action: "index"}, class: "btn btn-inverse" %>

link_to Helper와 함께 더 나아갈 수있는 몇 가지 문서

그들은 말한다 :

추가 리터럴 해시가 필요하므로 이전 인수 스타일을 사용할 때는주의해야합니다.

link_to "Articles", { :controller => "articles" }, :id => "news", :class => "article"
# => <a href="/articles" class="article" id="news">Articles</a>

해시를 해제하면 잘못된 링크가 제공됩니다.

link_to "WRONG!", :controller => "articles", :id => "news", :class => "article"
# => <a href="/articles/index/news?class=article">WRONG!</a>

경로 구성에 따라 생성 된 URL 도우미사용하는 것이 좋습니다 . 귀하의 경우 :

link_to "Learn More", menus_path, :class => "btn btn-inverse"

생성 된 도우미에 대한 약간의 알림 :

# routes.rb
resources :users

# any view/controller
users_path #=> /users
edit_user_path(user) #=> /users/:id/edit
user_path(user) #=> /users/:id  (show action)
new_user_path(user) #=> /users/new

새로운 인수 규칙을 시도하십시오.

<%= link_to 'Learn More', 'menus#index', class: 'btn btn-inverse' %>

나는 내 문제를 해결했다

<%= link_to image_tag("imageexamplo.png", class: 'class or id examplo css'),{controller: "user" , action: "index"}%>

이것은 동료 개발자가 이러한 요구를 가지고있는 경우를 대비 하여 다른 뷰 엔진 인 HAML을 사용하여 해결 한 방법입니다.

%i= link_to "Add New Blog Post", user_post_edit_new_url(current_user), :class  => "fa fa-plus-circle"

링크에 필요한 컨트롤러 작업 / 라우트가없는 경우 nil을 자리 표시 자로 전달하고 필요에 따라 클래스를 적용 할 수 있습니다.

<%= link_to 'link verbiage', nil,  class: 'classes for action tag'%>

참조 URL : https://stackoverflow.com/questions/13016295/add-css-class-to-rails-link-to-helper

반응형