フォーム以外のページには、ハイパーリンクよりもボタンとして見栄えの良いリンクがいくつかあります...
Link_toではなくbutton_toが機能すると思いましたが、buton_toは常に投稿として扱われるようです。
(非送信)リンクをボタンで簡単に置き換える簡単な方法はありますか?
必要なことは、:method => "get"
ボタンの最後まで_toリンクのように扱われるようにする
を使って users_path
<%= button_to "BUTTON: link version", users_path, :method => "get" %>
または、実際にHTMLにフォームを挿入する代わりに(これはbutton_toが実際に行うことです)、よりきれいな(Webデザインの観点から)メソッドを使用して、実際にボタンのように見えるようにリンクをスタイルすることができますいくつかの利点
これを行う方法に関する素晴らしい記事です そして、ここにそのコードの小さな断片があります。実際には、ボーダー、パディング、背景画像をいじるだけです
a.button {
background: transparent url('bg_button_a.gif') no-repeat scroll top right;
color: #444;
display: block;
float: left;
font: normal 12px arial, sans-serif;
height: 24px;
margin-right: 6px;
padding-right: 18px; /* sliding doors padding */
text-decoration: none;
}
コードは上記のリンクから取得されます。どちらの方法を選択してもうまくいくはずです、お楽しみください!
ここで欲しいのはただの眺めだけだと思います。その場合は、リンク内のクラスオブジェクトにクラスを追加するだけです
<%= link_to 'Add Class', new_subject_path, class: "btn btn-primary"%>
Button_toの場合とlink_toの場合のフォームの動作が異なり、リンクが提供する機能が必要だったため、最近これを行う必要がありました。私が見つけた最良の解決策は、CSSをまったく使用せず、代わりに.html_safeを呼び出してRubyコードでhtmlをエスケープし、リンクをボタンとして適切に表示します。
<%= link_to "<button>This is a button</button>".html_safe, some_path, :id => "button_id", :class => "button_class" %>
link_to
をbutton_to
に変更するだけで十分です。