Неопределенный метод в бегуне - PullRequest
0 голосов
/ 15 марта 2012

Итак, я пытался протестировать следующую простую процедуру заголовка скрипта. 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 в таблицу пользователей, и все же каждый раз, когда я запускаю

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 в неопределенном?

Ответы [ 2 ]

4 голосов
/ 15 марта 2012

У вас есть два символа подчеркивания в def fetch__records.

1 голос
/ 15 марта 2012

Похоже, что определение вашего метода имеет два подчеркивания, когда вы вызываете только одно:

def fetch__records

И

rails runner "Procedure.fetch_records"

Измените либо def на fetch_records, либо runner наfetch__records

...