【问题标题】:How to send Hyperlink(Task URL) in CSV Export如何在 CSV 导出中发送超链接(任务 URL)
【发布时间】:2016-12-15 06:57:31
【问题描述】:

我想在 CSV 文件中显示 Task_Url,我已将此查询用于 CSV -

user_trackers = TaskTimeTracker.joins(:task).where("(task_time_trackers.created_at BETWEEN ? AND ?)",Date.current.beginning_of_month, Date.current.end_of_month )

@trackers = user_trackers

这是我使用的 CSV 方法 -

def export_csv
      columns = %w(Date Task Task_URL TimeSpent Log)
      CSV.generate do |csv|
        csv << columns
        @trackers.each do |t|
          csv << [t.created_at,
                    t.task.name,

                    t.time_spent,
                    t.description ]
        end
      end
    end

这是我使用的任务模型。

class Task < ActiveRecord::Base
      TASK_TYPES = { bug: 'Bug', enhancement: 'Enhancement', feature: 'Feature'}
      belongs_to :project
      belongs_to :user
      has_many :task_time_trackers, dependent: :nullify
      validates :task_type,presence: true
end

Task_Time_Tracker 模型

class TaskTimeTracker < ActiveRecord::Base
    belongs_to :task
    belongs_to :user
    validates :description,presence:true
    validates :time_spent,presence:true
end

Task_Time_Tracker 的架构信息

# == Schema Information
#
# Table name: task_time_trackers
#
#  id          :integer          not null, primary key
#  description :text(65535)
#  time_spent  :float(24)
#  created_at  :datetime         not null
#  updated_at  :datetime         not null
#  task_id     :integer
#  user_id     :integer

项目模型

class Project < ActiveRecord::Base
  has_many :tasks, dependent: :destroy
  has_and_belongs_to_many :users
end

【问题讨论】:

    标签: ruby-on-rails ruby csv hyperlink


    【解决方案1】:

    此方法在控制器或模型中实现?

    测试一下:

    def export_csv
      columns = %w(Date Task Task_URL TimeSpent Log)
      CSV.generate do |csv|
        csv << columns
        @trackers.each do |t|
          csv << [t.created_at,
                    t.task.name,
                    task_url(t.task),
                    t.time_spent,
                    t.description ]
        end
      end
    end
    

    【讨论】:

    • 未定义的方法 `task_url' 为
    • 这个方法是在控制器还是模型中实现的?
    • 我在导出模块下为它创建了一个单独的类
    • 添加这个include Rails.application.routes.url_helpers 导出并再次测试tasks_url(t.task)
    猜你喜欢
    • 2014-07-11
    • 2017-12-29
    • 2020-04-06
    • 2021-08-13
    • 2016-07-22
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 2021-04-11
    相关资源
    最近更新 更多