paramount 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5315203186b619e31b41708108e12884229dccf4
4
- data.tar.gz: 79b90c02029f4c0ab95fc8517ef6b72ce7db9c97
3
+ metadata.gz: f4fe81c25a940b4839127cd8f3eac59404fd6959
4
+ data.tar.gz: aaee9e97b293c862f9cca7caeae0f563f86da250
5
5
  SHA512:
6
- metadata.gz: 637bec0c78a7714428b8a19d9a081e1adcaca0ba7abebcb0b1e40e01383d776559ab484774bbe239e553aa4b0f4491583f10ea4d946fc113f27b156588047b7f
7
- data.tar.gz: f23ec2493d22faf85f9e3e0fbb24f276be43816bdca8e5ec98dad62e543f1c3cf7daeca1aef9780d8ab913d804921c40689e78e414e9828aebce4e877e5df95e
6
+ metadata.gz: ca90164d9c543cb75796dd73e598d2fcadbd9337522002df6cad81326c56bb4e1342e3c783a0ec29ea0e76ab557208159e817204088db63c97b22985072ba86f
7
+ data.tar.gz: a8dad0f7d5a6a4c45ab067354bd6897e39ed4e338da000ca6368f440077f358f484fdf018c6b0895312a46eab785320112bc9f99cd4c37b20ab8bb311785a4e4
@@ -4,4 +4,20 @@ class ParamountGenerator < Rails::Generators::NamedBase
4
4
  def create_model_file
5
5
  template "form.rb", File.join('app/forms', class_path, "#{file_name}_form.rb")
6
6
  end
7
+
8
+ def create_controller
9
+ # template "controller.rb", File.join('app/controllers', class_path, "#{file_name.pluralize}_controller.rb")
10
+ end
11
+
12
+ def create_view
13
+ template "view.rb", File.join('app/views', class_path, "#{file_name.pluralize}", "_form.html.haml")
14
+ end
15
+
16
+ def class_mate
17
+ classy = begin
18
+ Object.const_get(class_name) ||
19
+ Object.const_get( file_name.classify)
20
+ rescue
21
+ end
22
+ end
7
23
  end
@@ -0,0 +1,20 @@
1
+ class <%= class_name.pluralize %>Controller < ApplicationController
2
+ include Paramount::Controller
3
+
4
+ private
5
+ def collection
6
+ @<%= file_name.pluralize %> ||= get_search.result.page(params[:page])
7
+ end
8
+
9
+ def resource
10
+ @<%= file_name %> ||= <%= class_mate %>.find(params[:id])
11
+ end
12
+
13
+ def get_search
14
+ @<%= file_name %>_search ||= <%= class_mate %>Search.new(params[:<%= file_name %>_search])
15
+ end
16
+
17
+ def resource_params
18
+ params.require(<%= file_name %>).permit!
19
+ end
20
+ end
@@ -1,11 +1,14 @@
1
+
1
2
  class <%= class_name %>Form < Paramount::Model
2
3
 
3
4
  def self.model_name
4
5
  ActiveModel::Name.new(self, nil, "<%= class_name %>")
5
6
  end
6
7
 
7
- <% class_name.constantize.new.attributes.except(:id, :created_at, :updated_at).each do |attr, val| %>
8
+ <% if class_mate %>
9
+ <% class_mate.new.attributes.except(:id, :created_at, :updated_at).each do |attr,val| %>
8
10
  attribute :<%= attr -%>
11
+ <% end %>
9
12
  <% end %>
10
13
 
11
14
 
@@ -0,0 +1,8 @@
1
+ = simple_form_for @<%= file_name %>.form, url: "/admin/<%= file_name.pluralize %>" do |f|
2
+ <% if class_mate %>
3
+ <% class_mate.new.attributes.except("id", "created_at", "updated_at").each do |attr,val| %>
4
+ = f.input :<%= attr -%>
5
+ <% end %>
6
+ <% end %>
7
+ %br
8
+ = f.button :submit
data/lib/paramount.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require "paramount/version"
2
2
  require "paramount/model"
3
3
  require "paramount/active_record"
4
+ require "paramount/controller"
4
5
 
5
6
  module Paramount
6
7
  # Your code goes here...
@@ -0,0 +1,41 @@
1
+ module Paramount
2
+ module Controller
3
+ def index
4
+ collection
5
+ end
6
+
7
+ def show
8
+ resource
9
+ end
10
+
11
+ def new
12
+ end
13
+
14
+ def edit
15
+ resource
16
+ end
17
+
18
+ def create
19
+ new
20
+
21
+ if new.form(resource_params).save
22
+ redirection(action: 'created')
23
+ else
24
+ render :new
25
+ end
26
+ end
27
+
28
+ def update
29
+ if resource.form(resource_params).save
30
+ redirection(action: 'updated')
31
+ else
32
+ render :edit
33
+ end
34
+ end
35
+
36
+ def destroy
37
+ resource.destroy
38
+ redirect_to polymorphic_path(resource.class), notice: 'Successfully destroyed'
39
+ end
40
+ end
41
+ end
@@ -1,3 +1,3 @@
1
1
  module Paramount
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
data/paramount.gemspec CHANGED
@@ -24,6 +24,6 @@ Gem::Specification.new do |spec|
24
24
  spec.add_development_dependency "bundler", "~> 1.7"
25
25
  spec.add_development_dependency "rake", "~> 10.0"
26
26
  spec.add_development_dependency "minitest", "~> 4.7"
27
- spec.add_development_dependency "active_record", "~> 4"
28
- spec.add_development_dependency "sqlite3", "~> 4"
27
+ spec.add_development_dependency "activerecord", "~> 4"
28
+ spec.add_development_dependency "sqlite3"
29
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paramount
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charles Sistovaris
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-07 00:00:00.000000000 Z
11
+ date: 2016-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -81,7 +81,7 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '4.7'
83
83
  - !ruby/object:Gem::Dependency
84
- name: active_record
84
+ name: activerecord
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
@@ -98,16 +98,16 @@ dependencies:
98
98
  name: sqlite3
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - "~>"
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: '4'
103
+ version: '0'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - "~>"
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: '4'
110
+ version: '0'
111
111
  description: Mount your parameteres on a dedicated object to cerate & update your
112
112
  models and finally give power to the building parts of you controller
113
113
  email:
@@ -122,9 +122,12 @@ files:
122
122
  - README.md
123
123
  - Rakefile
124
124
  - lib/generators/paramount_generator.rb
125
+ - lib/generators/templates/controller.rb
125
126
  - lib/generators/templates/form.rb
127
+ - lib/generators/templates/view.rb
126
128
  - lib/paramount.rb
127
129
  - lib/paramount/active_record.rb
130
+ - lib/paramount/controller.rb
128
131
  - lib/paramount/model.rb
129
132
  - lib/paramount/version.rb
130
133
  - paramount.gemspec
@@ -150,7 +153,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
153
  version: '0'
151
154
  requirements: []
152
155
  rubyforge_project:
153
- rubygems_version: 2.4.5
156
+ rubygems_version: 2.4.5.1
154
157
  signing_key:
155
158
  specification_version: 4
156
159
  summary: Mount your parameteres on a dedicated object.