在rails中将一个表的行插入另一个表

时间:2013-09-06 04:34:58

标签: ruby-on-rails ruby-on-rails-3.1

我正在开发一个应用程序,我需要在View中单击按钮将行从一个表保存到另一个表。在按下按钮时,我最初根据按钮点击传递的字段从一个表中获取行。获取行后,我将它们插入到另一个表中,然后从第一个中删除行。以下是View

中的代码
<div class ="sbutton">
<%= button_to "Print", { :controller => "billings", :action => "printorder", :id => @orders.first.tableno}, :method => :delete %>
</div>

以下是账单控制器中的printorder方法:

def printorder

        lists = List.select.where(:tablabel => "Table"+params[:id]).to_a
        lists.each do |list|
            order = Order.new(
                :orderno => list.orderno,
                :tableno => list.tableno,
                :itemname => list.itmename,
                :quantity => list.quantity,
                :amount => list.amount,

            )
            order.save
        end
        lists.delete_all
        Table.where(:tablabel => "Table"+params[:id]).update_all(:tabstatus => "available")

  end

在上面的方法中,我从lists表中获取行,并使用为特定表号提取的行更新orders表。表号从视图传递,我在params[:id]中捕获它。路由文件具有此方法的代码

resources :billings do
        delete :printorder, on: :member
    end

问题是我在第tried to create Proc object without a block行的账单控制器的printorder方法中获得了lists = List.select.where(:tablabel => "Table"+params[:id]).to_a

我搜索了很多这个错误,但无法理解根本原因或得到解决方案。请指教。感谢。

0 个答案:

没有答案