A model files generator plugin from migrate file
Add this line to your application's Gemfile:
gem 'models_generator', :groups => :development
And then execute:
$ bundle
Or install it yourself as:
$ gem install models_generator
class CreateAllTables < ActiveRecord::Migration
def self.up
create_table(:employees) {|t| t.string :name}
create_table(:users) {|t| t.string :name}
end
end
$ rake db:migrate
$ rails g models # NOT 'model' !
create app/models/employee.rb
create spec/models/employee_spec.rb
create app/models/user.rb
create spec/models/user_spec.rb
You can configure the following default values by overriding these values using ModelsGenerator.configure
method.
master_attrs # %w[name label value] by default
master_eval # '' by default. If have 'master_cache' gem, 'master_cache'
If the table have value of master_attrs, model file include master_eval. For instance:
class EmployeeType < ActiveRecord::Base
master_cache
end
There's a handy generator that generates the default configuration file into config/initializers directory. Run the following generator command, then edit the generated file.
$ rails g models_generator:config
-
- 'models_generator' plugin integrated 'master_cache'
-
- These plugin auto resolve relation (belongs_to, have_many...)
- Ruby 1.8.7, 1.9.3
- ActiveRecord 3.x
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
MIT License. Copyright 2012 DianthuDia.