Это то, что я пытаюсь сделать здесь. Я вызываю функциональный тест от пользовательского контроллера. и внутри тестовой функции я инициализирую новый объект статьи следующим образом: article = new Article
. Но это дает мне ошибкуСильная ошибка параметра при создании нового объекта
ArgumentError in UsersController#create
When assigning attributes, you must pass a hash as an argument.
Я следующий код
users_controller
def create
User.test
end
private
def user_params
params.require(:user).permit(:name, articles_attributes:[:content)
end
модель пользователя
class User
def self.test
article = new Article
article.attributes = {"content"=>"this is some sample content"}
article.save
end
end
Я знаю, что этот вопрос был задан и ответил много времени, но Я не мог найти ничего, что соответствовало бы моей проблеме или решению для этого. Поэтому, пожалуйста, скажите мне, как сохранить объект статьи внутри пользовательского вызова модели.
Как 'статья = новый Article' даже работает? О, я вижу. его вызов «Class # new», а затем передача в определение класса самого себя ... поэтому он компилируется. но он все еще не делает то, что вы считаете. Попробуйте 'article = Article.new' –