Ruby on rails Rails:显示可单击的图像,并传递参数

Ruby on rails Rails:显示可单击的图像,并传递参数,ruby-on-rails,ruby,link-to,Ruby On Rails,Ruby,Link To,基本上我要处理三件事:(*前两件工作) 一个名为Index()的操作,它接受用户id参数 CSV导出功能 从索引视图到CSV导出文件所需的链接;它理想地利用了link_to方法 前两种方法工作得很好,我在使用link\u-to方法生成链接时遇到了障碍,因为CSV文件需要使用user\u-id参数限定到正确的用户 这是我的控制器代码: def index @pro = Pro.find_by_user_id(params[:user_id]) csv_code = CSV.gen

基本上我要处理三件事:(*前两件工作)

  • 一个名为Index()的操作,它接受用户id参数
  • CSV导出功能
  • 从索引视图到CSV导出文件所需的链接;它理想地利用了link_to方法
  • 前两种方法工作得很好,我在使用link\u-to方法生成链接时遇到了障碍,因为CSV文件需要使用user\u-id参数限定到正确的用户

    这是我的控制器代码:

     def index
        @pro = Pro.find_by_user_id(params[:user_id])
        csv_code = CSV.generate do |csv|
          @pro.accounts.each do |account|
            csv << [account['name'],account['number']]
          end
        end   
        respond_to do |format|
          format.html
          format.csv { render :csv => csv_code}
        end
      end
    
    用于生成CSV的Url:

    http://localhost:3000/.csv?user_id=1234
    
    我确信这是一个非常容易解决的问题,我花了一个小时忽视了显而易见的解决方案。提前谢谢你

    只需将“(”添加到图像标记中即可


    =link_到image_标签(“export.png”),{:action=>:index.csv}

    这不起作用,因为索引需要一个参数user_id来知道它的范围。所以,只要尝试一下,=link_到image_标签(“export.png”),{:action=>:index,:user_id=>您的代码}
    http://localhost:3000/.csv?user_id=1234