2016-04-02 9 views
0

私は151のオブジェクトを含む私のレールアプリのseed.rbファイルを持っています。Ruby on Rails - どのデータをseed.rbファイルからレンダリングしたいのですか?

私の.htmlファイルで、私はすべてのオブジェクトをseed.rbファイルにレンダリングすることができます。

<tbody> 
    <% @pokemon.each do |pokemon| %> 
     <tr> 
     <td class="col-md-6"> 
      <a href="/pokemon/<%=pokemon.no%>"><%= pokemon.name %></a> 
      <br> 
      <%= pokemon.no %> 
     </td> 
     </tr> 
    <% end %> 
    </tbody> 

どのようにオブジェクトまたは特定のオブジェクトをレンダリングするのですか?

モンスター= Pokemon.create({NO: '001'、名称: 'フシギダネ'})

モンスター= Pokemon.create({NOここ

私のシードデータの例を示します。 '002'、名前: 'フシギソウ'})

ポケモン= Pokemon.create({いいえ: '003'、名前: 'Venusayr'})

+0

あなたは 'no'属性をチェックできますか? –

+0

@AwladLitonあなたは特に必要なものをレンダリングするために "no"属性を使用することを意味しますか?それを行うための適切なerb構文は何ですか? – John

+0

'@ポケモン'の特定のオブジェクトに対して 'no'属性で検索します。 –

答えて

0

あなたが本当に1つのインスタンスのみをレンダリングしたいですか?もしそうなら、コントローラで基本的なルビーを使って1つのインスタンスを取得するだけです。レールコンソールを開き、実行してください

Pokemon.count 

保存されているレコードの総数が表示されます。あなたはすべてのインスタンスを表示し、グリッドでそれらを表示するために、ブートストラップを使用するように

@pokemon = Pokemon.first 
@pokemon = Pokemon.last 
Pokemon.find(n) # where n equals the id of the instance you want to display 

変数インスタンスを設定し、コントローラではしかし、あなたの質問が聞こえます。あなたはすでにすべてのインスタンスを取得しており、それらをループしています。あなたは、ブートストラップを読んで、必要な外観を得るために異なるクラスを採用する必要があります。あなたの現在のコードで

、@pokemonは、1つのインスタンスを表示するために

@pokemon.first 

を使用することができますビューの意味Pokemon.allを呼んでアクティブなレコードの結果を保持する配列です。しかし、これは非常に効率的な方法ではありません。

+0

詳しい説明はMargoありがとうございます! <%= @ pokemon.first.name%>を使用すると、実際には "Bulbasaur"が表示されます。 – John