Module | Stringex::ActsAsUrl::ClassMethods |
In: |
lib/stringex/acts_as_url.rb
|
Creates a callback to automatically create an url-friendly representation of the attribute argument. Example:
act_as_url :title
will use the string contents of the title attribute to create the permalink. <strong>Note:</strong> you can also use a non-database-backed method to supply the string contents for the permalink. Just use that method‘s name as the argument as you would an attribute.
The default attribute acts_as_url uses to save the permalink is url but this can be changed in the options hash. Available options are:
:url_attribute: | The name of the attribute to use for storing the generated url string. Default is :url |
:scope: | The name of model attribute to scope unique urls to. There is no default here. |
:only_when_blank: | If true, the url generation will only happen when :url_attribute is blank. Default is false (meaning url generation will happen always) |
:sync_url: | If set to true, the url field will be updated when changes are made to the attribute it is based on. Default is false. |
Initialize the url fields for the records that need it. Designed for people who add acts_as_url support once there‘s already development/production data they‘d like to keep around.
Note: This method can get very expensive, very fast. If you‘re planning on using this on a large selection, you will get much better results writing your own version with using pagination.