Skip to content

Get attribute name within normalizer #74

@tanraya

Description

@tanraya

I would like to create a normalizer with auto-truncation feature, so I need to know the current limit of a table field. To determine the length of the field I need to know the name of the attribute.

Here's what I want:

  config.normalizers[:auto_truncate] = lambda do |value, options|
    column = options[:model].column_for_attribute(options[:attribute_name])

    if value.is_a?(String) && column.limit
      value.mb_chars.limit(column.limit)
    else
      value
    end
  end

I looked into the source and found nothing relative to the topic. What if I add :attribute_name and :model keys into options hash and send PR?

Activity

mdeering

mdeering commented on Nov 11, 2016

@mdeering
Owner

Yes. I can see value in knowing the attribute and even having access to instance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @mdeering@tanraya

        Issue actions

          Get attribute name within normalizer · Issue #74 · mdeering/attribute_normalizer