首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >下载CSV会下载所有文件,需要下载特定文件

下载CSV会下载所有文件,需要下载特定文件
EN

Stack Overflow用户
提问于 2020-03-03 08:53:10
回答 1查看 31关注 0票数 0

我在将值下载到CSV文件时遇到了一些问题。我有两个模型,商业区和房产。市中心有很多房产。每家酒店在市中心都有一家。我的问题是,我所做的事情,我已经能够下载所有属性,这是很酷!但我正在苦苦挣扎的是只下载市中心所有的房产。

到我最初要下载的所有属性

在我的属性控制器中:

代码语言:javascript
运行
复制
  def index
    @properties = Property.all

    respond_to do |format|
      format.html
      format.csv { send_data @properties.to_csv }
    end
  end

在我的属性模型中

代码语言:javascript
运行
复制
  def self.to_csv
    attributes = %w(id name owner_first_name created_at)
    CSV.generate(headers: true) do |csv|
      csv << attributes

      all.each do |property|
        csv << property.attributes.values_at(*attributes)
      end
    end
  end

在我看来,我有。

代码语言:javascript
运行
复制
= link_to "download CSV", downtown_properties_path(:format => :csv), class: "button"  

同样,这是可行的,但由于我的关联,我可以添加链接的视图只能在downtowns/1/properties中,这基于我将代码放在index中,这实际上很有意义

我尝试了一些类似的东西

代码语言:javascript
运行
复制
@download_properties = Property.where(downtown: @downtown_id)

respond_to do |format|
  format.html
  format.csv { send_data @download_properties.to_csv }
end

但是,在这一点上还没有定义@downtown_id。所以我认为在downtown模型中解决方案更好?

如果任何人对此有任何想法并能帮助我,我将不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2020-03-03 09:03:25

它不应该是:

代码语言:javascript
运行
复制
@download_properties = Property.where(downtown: params[:id])

代码语言:javascript
运行
复制
@download_properties = Downtown.find(params[:id]).properties
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60498619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档