初入门 Ruby On Rails,遇到了很多问题,
通过Google大神,也解决了很多对自己来说是难题的问题.
不过关于这问题,找了很多次也没法解开,所以只好来求教于高人
因为在写的程式,其中一个表,不是以 id 作为自动递增的主键,而是使用 mid
所以下面的程式码在执行时便发生了找不到所属于 id 的值的错误
不知道这问题该如何解决呢?试过了 update_all 这方法,不过出来还是有带 id..
所以只好发问,请教一下
问题:
[code="ruby"]Mysql::Error: Unknown column 'id' in 'where clause': UPDATE messages
SET message
= 'ccc', subject
= 'aaa', author
= 'bbb' WHERE id
= NULL[/code]
代码:
[code="ruby"]def update
@message = Message.find(:first, :conditions => ["mid = ?", params[:id]])
if @message.update_attributes(params[:message])
flash[:notice] = 'Post was successfully updated.'
redirect_to gbook_path(:id => @message.mid)
else
format.html { render :action => "edit" }
end
end[/code]