Sha256: 28159873d4cf4cf6c35374526650a9f7e631eba88fd2838aee617321e08055f2
Contents?: true
Size: 681 Bytes
Versions: 1
Compression:
Stored size: 681 Bytes
Contents
require 'active_support/concern' module SimplePages module Models module PageUrl extend ActiveSupport::Concern included do attr_accessible :url validates :url, format: { with: /[\w\d\-_]{3,}/ }, allow_blank: true acts_as_url :title, sync_url: true, only_when_blank: true end module ClassMethods def find_or_create_by_url(attrs) url = attrs.delete :url page = where(url: url).first if page.nil? page = create(attrs) page.url = url page.save end page end end def to_param url end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
simple-pages-rails-0.3.1 | lib/simple_pages/models/page_url.rb |