[英]Ruby on Rails - wrong number of arguments
def delete_homework
Homework.all(:conditions => {:teacher => params.require(:teacher) })
redirect_to :back
end
This is my controller 这是我的控制器
<div class="row">
<div class="col s12">
<div class="card blue-grey lighten-2">
<div class="card-content white-text">
<span class="card-title">Delete Homework</span>
<form action="/welcome/delete_homework">
<input type="text" name="teacher" placeholder="Teacher Name">
<input class="btn waves-effect waves-light" type="submit">
</form>
</div>
</div>
</div>
</div>
This is the HTML side. 这是HTML方面。
When I try this, ruby gives ArgumentError in WelcomeController#delete_homework wrong number of arguments (given 1, expected 0) 当我尝试此操作时,ruby给出了WelcomeController#delete_homework中的ArgumentError错误的参数数量(给定1,预期为0)
what's wrong? 怎么了? please help.
请帮忙。 Thank you in advance
先感谢您
Change this line: 更改此行:
Homework.all( your_conditions )
to: 至:
Homework.where( your_conditions )
The all
method can't take any parameters. all
方法不能使用任何参数。 It should only be used when you simply want to grab all the records of a given model from the database. 仅当您只想从数据库中获取给定模型的所有记录时,才应使用它。
尝试这个
Homework.where(:teacher => params[:teacher])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.