モデルで定義されたクラスメソッドがコントローラーに表示されない

ニコラスS
rails version 4.2.6

HAMLを使用してRailsアプリのビューにチェックボックスコンポーネントを作成しようとしています。

関連するビューコード:

= form_tag movies_path, :method => :get do
  Include:
  - @all_ratings.each do |rating|
    = rating
    = check_box_tag "ratings[#{rating}]"
  = submit_tag 'Refresh'

このビューをレンダリングするコントローラーメソッド「index」は、インスタンス変数「@all_ratings」を作成することになっています。これは、考えられるすべての映画のレーティング(["G"、 "PG"、 "PG-13"、 "R"])。

関連するコントローラーコード:

def index
    @movies = Movie.order(params[:sort_by])
    @sort_column = params[:sort_by]
    @all_ratings = Movie.all_ratings
end

メソッド「all_ratings」は、私が作成した「Movie」モデルのクラスメソッドです。

class Movie < ActiveRecord::Base
    attr_accessible :title, :rating, :description, :release_date

    def self.all_ratings
        Movie.select(:rating).uniq.map { |movie| movie.rating }.sort
    end
end

何をしようとしても、エラーが発生し続けます。

NoMethodError in MoviesController#index
undefined method `all_ratings' for #<Class:0x000000047bcab0>

私はここでいくつかの同様のエラーを調査しましたが、それらは一般にクラスメソッドとインスタンスメソッドの間違いに関連しているようです。しかし、これらの人々のために働いた救済策のどれもこれまで私のために働いていません。モデルに加えた変更は、コントローラーからアクセスできないようです。

どうもありがとう。

ニコラスS

私はついにそれを理解しました。別々のプロジェクトに「movie.rb」という2つのファイルがあり、間違ったファイルを編集していました。これは、テレビを分解して修理し、プラグを差し込むのを忘れただけだとわかるのと同じだと思います。:|

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

NSobjectクラスで宣言および定義されているビューコントローラクラスにpermeterizedメソッドが表示されない

分類Dev

ヘルパーディレクトリで定義されたメソッドは、コントローラーでアクセスできますか?

分類Dev

デリゲートを使用して、プログラムクラスに見つからない別のクラスで定義されたメソッド

分類Dev

コンストラクターに設定された変数が別のメソッドで定義されていません

分類Dev

デストラクタメッセージがコンソールC ++に表示されない

分類Dev

クラスの定義でスコープが宣言されていない場合、CDIプロデューサーメソッドが機能しない

分類Dev

変数がメソッドで定義されていないのに、Typescriptのコンストラクターにない理由

分類Dev

パラメータがモデルではなくメソッド引数として直接定義されている場合、IHttpActionResultの結果はリクエスト本文パラメータのバインドに失敗します

分類Dev

コントローラで呼び出されたときにRailsモデルメソッドが機能しない

分類Dev

Laravelモデルがコントローラーメソッドでバインドされていません

分類Dev

Javassistがスーパークラスで定義されたメソッドを呼び出さない

分類Dev

モデルとその変数がコントローラー内でビューからメソッドに渡されないのはなぜですか?

分類Dev

モジュール/クラスがリロードされた後もRubyメソッドはまだ定義されています

分類Dev

カメラコントロールがデバイスに表示されない

分類Dev

Django:クライアントがビュークラスで定義されていないhttpメソッドを要求した場合

分類Dev

TS-クラスメソッドがコールバックで定義されていません

分類Dev

ソナタのネストされたモーダルクラッドで開いたときにCkeditorがロードされない

分類Dev

リモートメソッドがループバックAPIエクスプローラーに表示されない

分類Dev

JavaScript:コンストラクターで定義されていないメソッドでプロパティを使用していますか?

分類Dev

Javaコンパイラがパッケージプライベートスーパータイプで定義されたパブリックメソッドに可視性ブリッジメソッドを追加するのはなぜですか?

分類Dev

Sony VAIO Pro13用のWindows8.1にアップグレードした後、コントロールパネルにIntelグラフィックスとメディアの設定が表示されない

分類Dev

JavaScript MVC:コントローラー内で呼び出されたモデルメソッドがudefined->を返しますが、なぜですか?

分類Dev

ビューまたはコントローラーに表示されるディレクティブでスコープ変数が定義されていないのはなぜですか?

分類Dev

Reactjs、this.contextはコンストラクターメソッドで定義されていません

分類Dev

コンストラクターのプロトタイプで定義されたメソッドは、Javascriptのコンストラクターのインスタンスメンバーにどのようにアクセスできますか?

分類Dev

.pbファイルからロードされたグラフで定義されたテンソルフローモデルのトレーニング可能なパラメーターの総数をカウントするにはどうすればよいですか?

分類Dev

JavaMail:デンマーク語の文字が含まれるドメインが原因で、「ドメインに文字列にコントロールまたは空白が含まれています」というエラーメッセージが表示される

分類Dev

initComponent内で宣言されたときに、イベントリスナーがコントローラーメソッドを呼び出さない

分類Dev

データベースのシード時にコントローラー ヘルパー メソッドが呼び出されない

Related 関連記事

  1. 1

    NSobjectクラスで宣言および定義されているビューコントローラクラスにpermeterizedメソッドが表示されない

  2. 2

    ヘルパーディレクトリで定義されたメソッドは、コントローラーでアクセスできますか?

  3. 3

    デリゲートを使用して、プログラムクラスに見つからない別のクラスで定義されたメソッド

  4. 4

    コンストラクターに設定された変数が別のメソッドで定義されていません

  5. 5

    デストラクタメッセージがコンソールC ++に表示されない

  6. 6

    クラスの定義でスコープが宣言されていない場合、CDIプロデューサーメソッドが機能しない

  7. 7

    変数がメソッドで定義されていないのに、Typescriptのコンストラクターにない理由

  8. 8

    パラメータがモデルではなくメソッド引数として直接定義されている場合、IHttpActionResultの結果はリクエスト本文パラメータのバインドに失敗します

  9. 9

    コントローラで呼び出されたときにRailsモデルメソッドが機能しない

  10. 10

    Laravelモデルがコントローラーメソッドでバインドされていません

  11. 11

    Javassistがスーパークラスで定義されたメソッドを呼び出さない

  12. 12

    モデルとその変数がコントローラー内でビューからメソッドに渡されないのはなぜですか?

  13. 13

    モジュール/クラスがリロードされた後もRubyメソッドはまだ定義されています

  14. 14

    カメラコントロールがデバイスに表示されない

  15. 15

    Django:クライアントがビュークラスで定義されていないhttpメソッドを要求した場合

  16. 16

    TS-クラスメソッドがコールバックで定義されていません

  17. 17

    ソナタのネストされたモーダルクラッドで開いたときにCkeditorがロードされない

  18. 18

    リモートメソッドがループバックAPIエクスプローラーに表示されない

  19. 19

    JavaScript:コンストラクターで定義されていないメソッドでプロパティを使用していますか?

  20. 20

    Javaコンパイラがパッケージプライベートスーパータイプで定義されたパブリックメソッドに可視性ブリッジメソッドを追加するのはなぜですか?

  21. 21

    Sony VAIO Pro13用のWindows8.1にアップグレードした後、コントロールパネルにIntelグラフィックスとメディアの設定が表示されない

  22. 22

    JavaScript MVC:コントローラー内で呼び出されたモデルメソッドがudefined->を返しますが、なぜですか?

  23. 23

    ビューまたはコントローラーに表示されるディレクティブでスコープ変数が定義されていないのはなぜですか?

  24. 24

    Reactjs、this.contextはコンストラクターメソッドで定義されていません

  25. 25

    コンストラクターのプロトタイプで定義されたメソッドは、Javascriptのコンストラクターのインスタンスメンバーにどのようにアクセスできますか?

  26. 26

    .pbファイルからロードされたグラフで定義されたテンソルフローモデルのトレーニング可能なパラメーターの総数をカウントするにはどうすればよいですか?

  27. 27

    JavaMail:デンマーク語の文字が含まれるドメインが原因で、「ドメインに文字列にコントロールまたは空白が含まれています」というエラーメッセージが表示される

  28. 28

    initComponent内で宣言されたときに、イベントリスナーがコントローラーメソッドを呼び出さない

  29. 29

    データベースのシード時にコントローラー ヘルパー メソッドが呼び出されない

ホットタグ

アーカイブ