これは、あなたのTransactionsController#index
アクションが@transactionsに対して何も返さないことを示しているようです。 最も明白な原因は、レコードを見つけるために使用しているロジックが壊れているか、結果が0か、@トランザクションが正しく設定されていないことです。
このようなビューでは、結果がない(または何らかのエラーが発生した)状況をエラーチェックしたいとします。
あなたのindex.htmlビュー:パーシャル
<% if [email protected] || @transactions.length == 0 %>
<p>'No transactions found.'</p>
<% else %>
<table>
<!-- put your column headers here -->
<!-- the next line iterates through each transaction and calls a "_transaction" partial to render the content -->
<%= render @transactions %>
</table>
<% end %>
あなた_transaction.html.erb:あなたのビューが再び作業を取得します
<tr>
<td><%= transaction.transaction_type %></td>
<td><%= transaction.date %></td>
</tr>
。次のステップは、コントローラのアクションが結果を返さない理由を突き止めることです。まず、レールコンソールを開き、レコードを取得しようとします。
>> Transaction.all
結果が返ってきたら、データがあります。ない場合は、あなたが開発したWebインターフェイスを介して、またはレールコンソール経由のいずれかのレコードを作成します。あなたは、レコードを持っていたら
>> t = Transaction.new()
>> t.transaction_type = 1 #or whatever is appropriate for your application
>> t.date = Date.today
>> t.valid? #if true, your record will save. If not, you need to fix the fields so they validate
>> t.save
、もう一度ビューをテストします。それでも障害が発生する場合は、おそらくコントローラロジックにエラーがあります。そのエラーが何であるかについては、あなたがそれを手伝ってくれるように投稿する必要があります。 :)
@transactions変数がまったく設定されていないようです。コントローラに設定してもよろしいですか?たぶん@名前の前に@を忘れてしまったでしょうか? – tomeduarte