Skip to content

Add column_names Method to ActiveHash #310

@hatsu38

Description

@hatsu38

Description

I would like to propose adding a column_names method to ActiveHash, similar to the method available in ActiveRecord. The primary motivation for this addition is to facilitate the generation of CSV headers when exporting data from models that utilize ActiveHash::Base.

In ActiveRecord, the column_names method returns an array of column names as strings. The implementation is straightforward:

# Returns an array of column names as strings.
def column_names
  @column_names ||= columns.map(&:name).freeze
end

motivation

For ActiveHash, having a column_names method would be beneficial in scenarios where we need to export data to CSV, ensuring the headers are generated dynamically based on the model's columns.

Use Case:

Exporting data from ActiveHash::Base models to CSV.
Dynamically generating CSV headers based on the model's columns.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions