Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Rails plugin to separate model concerns into multiple files.
Ruby
Branch: master
Pull request Compare This branch is 8 commits ahead of jakehow:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
tasks
test
.gitignore
MIT-LICENSE
README
Rakefile
VERSION
init.rb
install.rb
uninstall.rb

README

ConcernedWith
=============

Simple way to separate model and controller concerns into separate files. Code is from Rick Olson's altered_beast project.


Example
=======

# app/models/user.rb
class User < ActiveRecord::Base
  concerned_with :validations, :authentication
end

# app/models/user/validations.rb
class User < ActiveRecord::Base
  validates_presence_of :name
end

#app/models/user/authentication.rb
class User < ActiveRecord::Base
  def self.authenticate(name, password)
    find_by_name_and_password(name, password)
  end
end

#app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
  concerned_with :authentication
end

#app/controllers/application/authentication.rb
class ApplicationController < ActionController::Base
  def logged_in?
    false
  end
end


Copyright (c) 2008 Jake Howerton, 2009 Mateusz Drożdżynski, released under the MIT license
Something went wrong with that request. Please try again.