指向单个控制器操作的多个按钮



我正在制作一个应用程序,用户可以分别使用wicked-pdf和imgkit以PDF或JPG格式打印文档。我有两个按钮,一个用于PDF和其他JPG。是否可以让这些按钮指向控制器中的相同操作,此处为"创建"。我的按钮是——

<%= button_to "Print Bill[PDF]", :action => "create" %>
<%= button_to "Print Bill[JPG]", :action => "new" %>

我可以创建两个操作吗?如果是,怎么会这样?如何捕获点击的按钮并呈现相应的视图。

首先,通常建议使用路由帮助程序,而不是指定控制器和操作。所以你的代码可能是

<%= button_to "Print Bill[PDF]", bill_print_path(@bill, format: :pdf) %>
<%= button_to "Print Bill[JPG]", bill_print_path(@bill, format: :jpeg) %>

并在您的控制器中

def print
    # insert here code to find your bill and load it from DB
    respond_to |format| do
        format.jpeg do
            # code to produce the jpeg version of the bill
        end
        format.pdf do
            # code to produce the pdf version of the bill
        end
    end
end

作为最后一步,我会button_to更改为link_to并将您的链接样式设置为按钮,但这更像是个人喜好。

相关内容

  • 没有找到相关文章

最新更新