petergate 0.1.18 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 91c85b6f22876391d247cc977089665b94230574
4
- data.tar.gz: 2092fda54c52443bfb2df6cee9da073026eda443
3
+ metadata.gz: b5be42f07725a2639a773fa80691ceff7eaac213
4
+ data.tar.gz: 9e5bcc39cddba694c3aae0f60afb66382a97e6f8
5
5
  SHA512:
6
- metadata.gz: 81efb57941dd3632e7cfb44106efddf1ad0c7c1f9231a46fe8232ee98cdae77e1da5716898e7272de2abe82ad60a7f8955c3a64dde430cd46aa1a44f857c2a57
7
- data.tar.gz: e3f2f8c13f9302dfd4f091ab0fbbb3decb128a66e24f75b21725fc09f726484b12437c4580c22164db33259a45abd3adc20c47449cdf9f0a22305b77cd5b0037
6
+ metadata.gz: 8dfb82c355d7986ce8acc01a1e1cd5f5c3c930724e50c1e8dfedf0ac0bc6719231f52fcb1cfd931dafd8ca64ecbcbaaa7c4caa1926b6aafa9eb5762a53f5d168
7
+ data.tar.gz: 484e7f29fea5537721d3170167bf01f58acfd57e65eba64072fd17b31f8b6d2fc292ff3e731c47da177dcf1be1db8f42c58b5f5b2abc86f7a48a3ffd0d8a860b
data/lib/petergate.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require "petergate/version"
2
+ require "petergate/railtie"
2
3
 
3
- module PeterGate
4
+ module Petergate
4
5
  module ControllerMethods
5
6
  module ClassMethods
6
7
  def access(rules = {}, &block)
@@ -110,9 +111,9 @@ module PeterGate
110
111
  end
111
112
 
112
113
  class ActionController::Base
113
- include PeterGate::ControllerMethods
114
+ include Petergate::ControllerMethods
114
115
  end
115
116
 
116
117
  class ActiveRecord::Base
117
- include PeterGate::UserMethods
118
+ include Petergate::UserMethods
118
119
  end
@@ -1,14 +1,7 @@
1
- require 'petergate/view_helpers'
2
1
  module Petergate
3
2
  class Railtie < Rails::Railtie
4
- initializer "petergate.libs" do
5
- ActiveSupport.on_load(:action_controller) do
6
- ActionController::Base.send(:include, Petergate::ControllerMethods)
7
- end
8
-
9
- ActiveSupport.on_load(:active_record) do
10
- User.send(:include, Petergate::ModelMethods)
11
- end
12
- end
3
+ config.app_generators do |g|
4
+ g.templates.unshift File::expand_path("../templates", File.dirname(__FILE__))
5
+ end
13
6
  end
14
7
  end
@@ -1,3 +1,3 @@
1
1
  module Petergate
2
- VERSION = "0.1.18"
2
+ VERSION = "0.2.1"
3
3
  end
@@ -0,0 +1,69 @@
1
+ <% if namespaced? -%>
2
+ require_dependency "<%= namespaced_file_path %>/application_controller"
3
+
4
+ <% end -%>
5
+ <% module_namespacing do -%>
6
+ class <%= controller_class_name %>Controller < ApplicationController
7
+ before_action :set_<%= singular_table_name %>, only: [:show, :edit, :update, :destroy]
8
+ access user: [:index]
9
+
10
+ # GET <%= route_url %>
11
+ def index
12
+ @<%= plural_table_name %> = <%= orm_class.all(class_name) %>
13
+ end
14
+
15
+ # GET <%= route_url %>/1
16
+ def show
17
+ end
18
+
19
+ # GET <%= route_url %>/new
20
+ def new
21
+ @<%= singular_table_name %> = <%= orm_class.build(class_name) %>
22
+ end
23
+
24
+ # GET <%= route_url %>/1/edit
25
+ def edit
26
+ end
27
+
28
+ # POST <%= route_url %>
29
+ def create
30
+ @<%= singular_table_name %> = <%= orm_class.build(class_name, "#{singular_table_name}_params") %>
31
+
32
+ if @<%= orm_instance.save %>
33
+ redirect_to @<%= singular_table_name %>, notice: <%= "'#{human_name} was successfully created.'" %>
34
+ else
35
+ render :new
36
+ end
37
+ end
38
+
39
+ # PATCH/PUT <%= route_url %>/1
40
+ def update
41
+ if @<%= orm_instance.update("#{singular_table_name}_params") %>
42
+ redirect_to @<%= singular_table_name %>, notice: <%= "'#{human_name} was successfully updated.'" %>
43
+ else
44
+ render :edit
45
+ end
46
+ end
47
+
48
+ # DELETE <%= route_url %>/1
49
+ def destroy
50
+ @<%= orm_instance.destroy %>
51
+ redirect_to <%= index_helper %>_url, notice: <%= "'#{human_name} was successfully destroyed.'" %>
52
+ end
53
+
54
+ private
55
+ # Use callbacks to share common setup or constraints between actions.
56
+ def set_<%= singular_table_name %>
57
+ @<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %>
58
+ end
59
+
60
+ # Only allow a trusted parameter "white list" through.
61
+ def <%= "#{singular_table_name}_params" %>
62
+ <%- if attributes_names.empty? -%>
63
+ params[:<%= singular_table_name %>]
64
+ <%- else -%>
65
+ params.require(:<%= singular_table_name %>).permit(<%= attributes_names.map { |name| ":#{name}" }.join(', ') %>)
66
+ <%- end -%>
67
+ end
68
+ end
69
+ <% end -%>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: petergate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.18
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Isaac Sloan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-28 00:00:00.000000000 Z
11
+ date: 2015-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -55,6 +55,7 @@ files:
55
55
  - lib/petergate.rb
56
56
  - lib/petergate/railtie.rb
57
57
  - lib/petergate/version.rb
58
+ - lib/templates/rails/scaffold_controller/controller.rb
58
59
  - petergate.gemspec
59
60
  homepage: https://github.com/isaacsloan/petergate
60
61
  licenses: