0

だから私は、次の簡単なスクリプト タイトル procedure.rb をテストしようとしています。

class Procedure < ActiveRecord::Base
  def fetch__records
    selection = connection.execute("SELECT * From users  WHERE name = test AND password = password")

    if (selection != nil)
      puts "It works."
    else
      puts "It fails."
    end
  end
end

単純な SQL select ステートメントを users テーブルに送信するだけで、実行するたびに

rails runner "Procedure.fetch_records"

次のエラーが表示されます

  undefined method `fetch_records' for Procedure(Table doesn't exist):Class (NoMethodError)

この質問を見て、 fetch_records が次のように定義されるように変更しました

def self.fetch_records

しかし、私はまだ同じエラーを受け取りました。fetch_records が undefined と表示されているのはなぜですか?

4

2 に答える 2

4

def fetch__records に 2 つのアンダースコア文字があります。

于 2012-03-15T18:09:57.000 に答える
1

1 つだけを呼び出しているのに、メソッド定義に 2 つのアンダースコアがあるようです。

def fetch__records

rails runner "Procedure.fetch_records"

デフfetch_recordsまたはランナーのいずれかを変更しますfetch__records

于 2012-03-15T18:11:09.143 に答える