Rails 3: странная ошибка - PullRequest
       1

Rails 3: странная ошибка

0 голосов
/ 14 сентября 2011

У меня странные ошибки с рельсами 3 отношения.

if @user.class.name == "Candidat"
  @sessiontests=@user.Sessiontests.where(:terminate => false)
else
  @sessiontests = Sessiontest.not_terminated
end

Я не могу использовать свою именованную область действия not_terminated на @ user.Sessiontests.Я получаю сообщение об ошибке «не могу создать файл».

Я получаю такую ​​же ошибку, когда пытаюсь это сделать:

@sessiontest =@candidat.Sessiontests.where("datetest > ?", Date.today)

Это работает отлично.Но когда я перемещаю этот код в функцию моей модели.Я снова получаю сообщение об ошибке «не могу загрузить файл».Функция работает и возвращает мне нужный объект, но рельсы терпят крах.

Есть идеи?

Редактировать:

Я имею в виду: @ sessiontests = @ user.Sessiontests.where (:завершить => ложь) работает.Но: @ sessiontests = @ user.Sessiontests.not_terminated сбой с моей ошибкой.

Моя область действия: scope: not_terminated, где ("terminate! =?", True)

And @sessiontest =@ candidat.Sessiontests.where ("datetest>?", Date.today) отлично работает в моем контроллере.Но: @sessiontest = @ candidat.my_function # в контроллере

#in my model candidat
def myfunction
   results=self.Sessiontests.where("datetest > ?", Date.today)
   return results
end

не работал.

Принимая во внимание: @count = @ candidat.my_function_count # в контроллере

#in my model candidat
def myfunction
   count = self.Sessiontests.where("datetest > ?", Date.today).count
   return count
end

Отлично работает.

Мое отношение один ко многим (1 кандидат на множество сессионных тестов), называется: Sessiontests.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...