Skip to content

initialize_urls not updating slugs as expected. #184

@sergiotapia

Description

@sergiotapia

I have a Company model, with fields name and slug:

class Company < ActiveRecord::Base
  acts_as_url :name, url_attribute: :slug
end

For new records, the gem converts asian characters to phonetic letters fine. Now I'm just trying to do the same for all of the existing records in our database.

For example here's one existing record we want to fix the slug for:

[1] pry(main)> Company.last.name
=> "Working 你好"

[2] pry(main)> Company.last.slug
=> "----"

After running the initialize_urls method, I expect the slug to be updated with the phonetic letters, but they don't change.

Here's the rake task that starts off the process:

# Rake task that iterates through all of the Companies in the database
# and regenerates their slug values from their name attribute.
task regenerate_company_slugs: :environment do
  Company.initialize_urls
end

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions