0

次のコードがあります。これが元の投稿です Rubyコントローラーから条件付きでCSSスタイルを設定する

%th{:class => @title_header}= link_to 'Title', my_path(:sort => 'title'), :id => 'title_header'

link_to が機能することを知っています

1. :class とは何かわかりません。また :class はキーワードですか?

2.モデルを作成すると model_path が取得されることは理解していますが、この場合、なぜ my_path に引数を渡すことができるのでしょうか?

3. :sort もレールのキーワードですか?

4. :id は Rails のキーワードですか?

5. この場合、my_path をどうするか? それは何かを返すつもりですか?

6. :id はどうですか? この場合はどうなりますか??

ありがとうございました!

4

2 に答える 2

2

:sort と :class は Ruby のシンボルであり、文字列のようにコード内で変更されない識別子を表します。これらは、キー/値のハッシュ定義でキーとして使用されています。

名前と値のペアのハッシュを HAML の %th のようなタグに渡すと、タグの HTML 属性に変換されます。これにより、インスタンス変数 @title_header からのクラス名のリストを使用して、TH タグの「class」属性の値を動的に設定できます。

my_path は、Rails ルートセットで指定されたルートの URI を生成する関数を表す名前付きルート ヘルパーです。さまざまなオプションを渡して、URI の生成方法を変更できます。デフォルトでは、ルート生成オプションではないオプションは、生成された URI のクエリ パラメーターとして挿入されます。したがって、my_path => /my/path の場合、my_path(:foo => 'bar') => /my/path?foo=bar.

この場合、このクエリ パラメータは、その URI で生成されたデータの並べ替え順序を決定する可能性があります。

同様に、link_to 関数は、リンク要素の生成方法を決定する最後の引数として、オプション ハッシュを受け取ります。この関数で設定される最後のオプションは html_options で、ハッシュの属性が生成された A タグの属性にマップされます。この場合、ハッシュ内の :id シンボルと値は、指定された値を持つ「id」HTML 属性を生成します。

あなたが尋ねたので、ここに CSS クラスとは何かについての良いリファレンスがあります: http://www.tizag.com/cssT/class.php

于 2012-09-18T02:58:21.567 に答える
0
%th{:class => @title_header}= link_to 'Title', my_path(:sort => 'title'), :id => 'title_header'

になります

<th class="value of ruby variable @title_header">
  <a href="value_of_my_path?sort=title" id="title_header">Title</a>
</th>

クラス属性は何ですか?

これは、要素の css クラス定義です。

于 2012-09-18T07:24:34.650 に答える