Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 添加a+;1在另一个表中计数,当另一个表创建了一个条目时_Ruby On Rails_View_Controller - Fatal编程技术网

Ruby on rails 添加a+;1在另一个表中计数,当另一个表创建了一个条目时

Ruby on rails 添加a+;1在另一个表中计数,当另一个表创建了一个条目时,ruby-on-rails,view,controller,Ruby On Rails,View,Controller,所以我有一张放书的桌子和一张放借书人的桌子。用户选择借书,然后在页面上显示借书人和借书内容 现在我的books表中还有一列是count,用来查看这本书被借了多少次 它的代码应该进入借阅控制器吗?我以前试过将其置于def create action下 执行了类似于count=Book.find(params[:id])、count=params[:count]+1的操作 但是这个解决方案似乎不起作用,它甚至找不到我所说的那本书。如果您的借贷者表与books表有关联。然后,您可以在创建后在模型中添加

所以我有一张放书的桌子和一张放借书人的桌子。用户选择借书,然后在页面上显示借书人和借书内容

现在我的books表中还有一列是count,用来查看这本书被借了多少次

它的代码应该进入借阅控制器吗?我以前试过将其置于def create action下

执行了类似于
count=Book.find(params[:id])、count=params[:count]+1的操作


但是这个解决方案似乎不起作用,它甚至找不到我所说的那本书。

如果您的借贷者表与books表有关联。然后,您可以在创建后在
模型中添加
回调
:增加\u count\u id
并在模型中创建方法

def increase_count_id
 self.book.update_column(count: self.book.count + 1)
end
您还可以使用以下选项:

book.increment!(:count, 1)

似乎还没有达到+1,但在我写新书时产生了一个错误:未定义的局部变量或方法“增加计数”\u idI已经在模型中建立了关联,书中有burrows,burrows属于BookOK现在我在借新书时得到了:未定义的局部变量或方法“增加计数”\u id”。但是我在借用者模型中编写了回调,在借用者控制器中编写了操作,好像它没有看到我在控制器中定义了回调。它写得也很正确,不能打字。方法也应该太简单:)但为什么最后要加感叹号呢?我不明白。除此之外,这是一个更好的解决我的问题的方法!!表示更新调用对象中的更改。您可以在这里查看示例: