という名前のインスタンス変数を使用しようとしました@url
コントローラ:@url = "asdasdsa"
しかし、ビューで呼び出すと、<%= @url %>
空でした....
名前をに変更しましたが、うまくいき@url_test
ました。なぜ @url で機能しなかったのか疑問に思っています。名前は保護されていますか?
という名前のインスタンス変数を使用しようとしました@url
コントローラ:@url = "asdasdsa"
しかし、ビューで呼び出すと、<%= @url %>
空でした....
名前をに変更しましたが、うまくいき@url_test
ました。なぜ @url で機能しなかったのか疑問に思っています。名前は保護されていますか?
これは Rails 3.0.x の既知の問題です。
この github の問題を参照してください:ビューが @url インスタンス変数を失っています。
spastorino が 1 年前にコメントしました
理由は覚えていませんが、@url は 3.0 AP の内部 ivar です。
Rails 3.1.0 で修正されるはずです。回避策として、インスタンス変数を呼び出したり@url
、アプリをアップグレードしたりしないでください。
url
Railsの予約語です。このサイトでより完全なリストを見ることができます(おそらく最新ではありませんが) 。