fume 0.6.3 → 0.6.4
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/lib/generators/fume/simple_scaffold/USAGE +10 -0
- data/lib/generators/fume/simple_scaffold/simple_scaffold_generator.rb +44 -0
- data/lib/generators/fume/simple_scaffold/templates/_form.html.erb +7 -0
- data/lib/generators/fume/simple_scaffold/templates/controller.rb +44 -0
- data/lib/generators/fume/simple_scaffold/templates/edit.html.erb +5 -0
- data/lib/generators/fume/simple_scaffold/templates/index.html.erb +32 -0
- data/lib/generators/fume/simple_scaffold/templates/new.html.erb +5 -0
- metadata +9 -2
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.6.
|
1
|
+
0.6.4
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module Fume
|
2
|
+
|
3
|
+
class SimpleScaffoldGenerator < Rails::Generators::NamedBase
|
4
|
+
include Rails::Generators::ResourceHelpers
|
5
|
+
source_root File.expand_path('../templates', __FILE__)
|
6
|
+
|
7
|
+
argument :attributes, :type => :array, :default => [], :banner => "field:type field:type"
|
8
|
+
|
9
|
+
def create_controller_files
|
10
|
+
template 'controller.rb', File.join('app/controllers', class_path, "#{controller_file_name}_controller.rb")
|
11
|
+
end
|
12
|
+
|
13
|
+
def copy_view_files
|
14
|
+
%w(index new _form edit).each do |view|
|
15
|
+
filename = "#{view}.html.erb"
|
16
|
+
template filename, File.join("app/views", controller_file_path, filename)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
protected
|
21
|
+
# model
|
22
|
+
def plural_model_name
|
23
|
+
singular_model_name.pluralize
|
24
|
+
end
|
25
|
+
|
26
|
+
def singular_model_name
|
27
|
+
model_class_name.underscore
|
28
|
+
end
|
29
|
+
|
30
|
+
def model_class_name
|
31
|
+
@model_class_name ||= file_name.camelize
|
32
|
+
end
|
33
|
+
|
34
|
+
# path
|
35
|
+
def resources_path_prefix
|
36
|
+
(class_path + [plural_model_name]).join('_')
|
37
|
+
end
|
38
|
+
|
39
|
+
def resource_path_prefix
|
40
|
+
(class_path + [singular_model_name]).join('_')
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
class <%= controller_class_name %>Controller < ApplicationController
|
2
|
+
|
3
|
+
def index
|
4
|
+
@search = <%= "#{model_class_name}.search(params[:search])" %>
|
5
|
+
<%= "@#{plural_model_name}" %> = @search.page(params[:page])
|
6
|
+
end
|
7
|
+
|
8
|
+
def new
|
9
|
+
<%= "@#{singular_model_name}" %> = <%= "#{model_class_name}.new" %>
|
10
|
+
end
|
11
|
+
|
12
|
+
def create
|
13
|
+
<%= "@#{singular_model_name}" %> = <%= "#{model_class_name}.new(params[:#{singular_model_name}])" %>
|
14
|
+
|
15
|
+
if <%= "@#{singular_model_name}.save" %>
|
16
|
+
flash[:notice] = '<%= human_name %> was successfully created.'
|
17
|
+
redirect_to_ok_url_or_default :action => "index"
|
18
|
+
else
|
19
|
+
render :action => "new"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def edit
|
24
|
+
@<%= singular_model_name %> = <%= "#{model_class_name}.find(params[:id])" %>
|
25
|
+
end
|
26
|
+
|
27
|
+
def update
|
28
|
+
<%= "@#{singular_model_name}" %> = <%= "#{model_class_name}.find(params[:id])" %>
|
29
|
+
|
30
|
+
if <%= "@#{singular_model_name}.update_attributes(params[:#{singular_model_name}])" %>
|
31
|
+
flash[:notice] = '<%= human_name %> was successfully updated.'
|
32
|
+
redirect_to_ok_url_or_default :action => "index"
|
33
|
+
else
|
34
|
+
render :action => "edit"
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def destroy
|
39
|
+
<%= "@#{singular_model_name}" %> = <%= "#{model_class_name}.find_by_id(params[:id])" %>
|
40
|
+
<%= "@#{singular_model_name}.destroy" %> if @<%= singular_model_name %>
|
41
|
+
|
42
|
+
redirect_to_ok_url_or_default :action => "index"
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,5 @@
|
|
1
|
+
<h1>Editing <%%= <%= "#{model_class_name}.human_name" %> %></h1>
|
2
|
+
|
3
|
+
<%%= semantic_form_for(<%= "@#{singular_model_name}" %>, :url => <%= resource_path_prefix %>_path(<%= "@#{singular_model_name}" %>)) do |f| %>
|
4
|
+
<%%= render :partial => "form", :locals => { :f => f } %>
|
5
|
+
<%% end %>
|
@@ -0,0 +1,32 @@
|
|
1
|
+
<h1>Listing <%%= <%= "#{model_class_name}.human_name" %> %></h1>
|
2
|
+
|
3
|
+
<table>
|
4
|
+
<thead>
|
5
|
+
<tr>
|
6
|
+
<th><%%= sort_link @search, :id %></th>
|
7
|
+
<%- for attribute in attributes -%>
|
8
|
+
<th><%%= sort_link @search, :<%= attribute.name %> %></th>
|
9
|
+
<%- end -%>
|
10
|
+
<th>Actions</th>
|
11
|
+
</tr>
|
12
|
+
</thead>
|
13
|
+
|
14
|
+
<%% <%= "@#{plural_model_name}" %>.each do |<%= singular_model_name %>| %>
|
15
|
+
<tr>
|
16
|
+
<td><%%= <%= singular_model_name %>.id %></td>
|
17
|
+
<%- for attribute in attributes -%>
|
18
|
+
<td><%%=<%= "l" if %w[date datetime time].include?(attribute.type.to_s) %> <%= singular_model_name %>.<%= attribute.name %> %></td>
|
19
|
+
<%- end -%>
|
20
|
+
<td>
|
21
|
+
<%%= link_to 'Edit', edit_<%= resource_path_prefix %>_path(<%= singular_model_name %>) %>
|
22
|
+
<%%= link_to 'Destroy', <%= resource_path_prefix %>_path(<%= singular_model_name %>), :confirm => 'Are you sure?', :method => :delete %>
|
23
|
+
</td>
|
24
|
+
</tr>
|
25
|
+
<%% end %>
|
26
|
+
</table>
|
27
|
+
|
28
|
+
<%%= paginate <%= "@#{plural_model_name}" %> %>
|
29
|
+
|
30
|
+
<div class="actions">
|
31
|
+
<%%= link_to 'New <%= human_name %>', new_<%= resource_path_prefix %>_path %>
|
32
|
+
</div>
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: fume
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.6.
|
5
|
+
version: 0.6.4
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Sunteya
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-06-
|
13
|
+
date: 2011-06-30 00:00:00 +08:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -157,6 +157,13 @@ files:
|
|
157
157
|
- lib/fume/rails_ext.rb
|
158
158
|
- lib/fume/railtie.rb
|
159
159
|
- lib/fume/simple_theme.rb
|
160
|
+
- lib/generators/fume/simple_scaffold/USAGE
|
161
|
+
- lib/generators/fume/simple_scaffold/simple_scaffold_generator.rb
|
162
|
+
- lib/generators/fume/simple_scaffold/templates/_form.html.erb
|
163
|
+
- lib/generators/fume/simple_scaffold/templates/controller.rb
|
164
|
+
- lib/generators/fume/simple_scaffold/templates/edit.html.erb
|
165
|
+
- lib/generators/fume/simple_scaffold/templates/index.html.erb
|
166
|
+
- lib/generators/fume/simple_scaffold/templates/new.html.erb
|
160
167
|
- rails_generators/fume/fume_generator.rb
|
161
168
|
- rails_generators/fume/rspec/rspec_gen.rb
|
162
169
|
- rails_generators/fume/rspec/templates/spec/support/erb_macros.rb
|