diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fd463ac --- /dev/null +++ b/.gitignore @@ -0,0 +1,18 @@ +*.gem +*.rbc +.bundle +.config +.yardoc +*.swp +Gemfile.lock +InstalledFiles +_yardoc +coverage +doc/ +lib/bundler/man +pkg +rdoc +spec/reports +test/tmp +test/version_tmp +tmp diff --git a/lib/slugtastic/model_additions.rb b/lib/slugtastic/model_additions.rb index 2585198..f5956fa 100644 --- a/lib/slugtastic/model_additions.rb +++ b/lib/slugtastic/model_additions.rb @@ -3,8 +3,7 @@ module Slugtastic def has_slug name, options = { :from => :title } before_validation do |record| - return if responds_to?(name) and send(name).present? - send("#{name}=", Slugtastic.generate_slug(send(options[:from]))) + send("#{name}=", Slugtastic.generate_slug(send(options[:from]))) if send(name).nil? or send(name).blank? end end diff --git a/spec/slugtastic/.model_additions_spec.rb.swp b/spec/slugtastic/.model_additions_spec.rb.swp deleted file mode 100644 index 9938153..0000000 Binary files a/spec/slugtastic/.model_additions_spec.rb.swp and /dev/null differ diff --git a/spec/slugtastic/model_additions_spec.rb b/spec/slugtastic/model_additions_spec.rb index 555bf4c..758ad59 100644 --- a/spec/slugtastic/model_additions_spec.rb +++ b/spec/slugtastic/model_additions_spec.rb @@ -4,6 +4,7 @@ require 'spec_helper' class Model < SuperModel::Base include ActiveModel::Validations::Callbacks extend Slugtastic::ModelAdditions + attr_accessor :slug, :title has_slug :slug, from: :title end