0

Controller 内に変数を設定し、Rails コンソールでその変数を読み取るのと同じくらい簡単なことをしようとしています。

@test変数の名前であるコンソールで行うことだけを考えました。として表示され>nullます。変数を設定した場所に置くと、ターミナルウィンドウで正しい値がトレースされます。

コンソールを介してこの変数に到達するために何をする必要があるかについてのアイデア。

最初にコントローラーの名前を入れてから.variableを入れてみましたが、エラーが発生しました

モデル名と .first や .last などの属性を使用するだけで、モデルの内部を確認できます

4

1 に答える 1

0

で値を取得するには、コントローラーをインスタンス化し、パブリック アクセサーを提供する必要がありますrails console

何かをデバッグしようとしている場合は、Pryをチェックすることをお勧めします。Ruby のデバッグ REPL です。require 'pry'コントローラーで a を実行し、アクションのどこかに配置しますbinding.pry。そのコントローラー メソッドをブラウザーで対話的に実行するか、機能テスト (後者をお勧めします) を介して実行すると、Pry REPL が開き@test、そこにスコープ。

このRailscastをチェックして、それを使用するためのヘルプを確認してください。

または、適切な単体テストまたは機能テストに頼ってください。メソッドに関するテストを作成し、アサーションを追加しassigns(:@test)て値を期待値と比較します。RSpec コントローラー仕様のドキュメント を確認してください。

于 2013-09-09T20:40:13.080 に答える