在我的 Rails 应用程序中,有一些节点可以通过填写其 previous_node_id 和 next_node_id 列的 id 来指向彼此。当我创建一个节点时,它成功地指向了前一个节点,但前一个节点并没有改变,它的 next_node_id 值仍然为零。我该如何解决?(我也会感谢任何关于如何改进代码的评论。)
节点控制器:
def create
@node = current_user.nodes.build(params[:node])
if params[:previous_node_id].present?
setup_node_pointers(Node.find(params[:previous_node_id]), @node )
end
if @node.save
...//end of the controller
来自 Helper 的相关代码:
def setup_node_pointers(previous_node, current_node)
previous_node.next_node_id = current_node.id
current_node.previous_node_id = previous_node.id
previous_node.save
end