metaitems 0.0.3.alpha → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +18 -2
- data/lib/generators/USAGE +17 -0
- data/lib/generators/metaitems_generator.rb +42 -0
- data/lib/generators/{metaitems/templates → templates}/metaitem.rb +0 -0
- data/lib/generators/{metaitems/templates → templates}/metaitems_controller.rb +0 -0
- data/lib/generators/templates/metaitems_helper.rb +5 -0
- data/lib/generators/templates/migration.rb +15 -0
- data/lib/generators/templates/views/default.html.erb +39 -0
- data/lib/generators/templates/views/playmo.html.erb +18 -0
- data/lib/metaitems/version.rb +1 -1
- data/metaitems.gemspec +3 -2
- metadata +23 -15
- data/lib/generators/metaitems/install_generator.rb +0 -25
- data/lib/generators/metaitems/templates/edit.html.erb +0 -18
data/README.md
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# Metaitems
|
2
2
|
|
3
|
-
Gem for
|
3
|
+
Gem for Rails that can generate metaitems to a project.
|
4
|
+
For properly work require ActiveRecord, ERB, Playmo.
|
4
5
|
Metaitems is the functionality (model, view, controller, route) to manage
|
5
6
|
name, description, keywords and url nick for html page.
|
6
7
|
|
@@ -20,7 +21,22 @@ Or install it yourself as:
|
|
20
21
|
|
21
22
|
## Usage
|
22
23
|
|
23
|
-
|
24
|
+
Description:
|
25
|
+
Generates metaitems to your project. Metaitems is
|
26
|
+
the functionality (model, view, controller, route) to manage
|
27
|
+
name, description, keywords and url nick for html page.
|
28
|
+
|
29
|
+
Examples:
|
30
|
+
rails generate metaitems
|
31
|
+
|
32
|
+
Model: app/models/metaitem.rb
|
33
|
+
Migration: db/migrate/[NOW_DATETIME]_create_metaitems.rb
|
34
|
+
View: app/views/metaitems/edit.html.erb
|
35
|
+
Helper: app/helpers/metaitems_helper.rb
|
36
|
+
Controller: app/controllers/metaitems_controller.rb
|
37
|
+
Route: 'resource :metaitem, :only => [:edit, :update]'
|
38
|
+
|
39
|
+
For properly work require ActiveRecord, ERB.
|
24
40
|
|
25
41
|
## Contributing
|
26
42
|
|
@@ -0,0 +1,17 @@
|
|
1
|
+
Description:
|
2
|
+
Generates metaitems to a project. Metaitems is
|
3
|
+
the functionality (model, view, controller, route) to manage
|
4
|
+
name, description, keywords and url nick for html page.
|
5
|
+
|
6
|
+
Examples:
|
7
|
+
rails generate metaitems
|
8
|
+
|
9
|
+
Model: app/models/metaitem.rb
|
10
|
+
Migration: db/migrate/[NOW_DATETIME]_create_metaitems.rb
|
11
|
+
View: app/views/metaitems/edit.html.erb
|
12
|
+
Helper: app/helpers/metaitems_helper.rb
|
13
|
+
Controller: app/controllers/metaitems_controller.rb
|
14
|
+
Route: 'resource :metaitem, :only => [:edit, :update]'
|
15
|
+
|
16
|
+
For properly work require ActiveRecord, ERB.
|
17
|
+
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'rails/generators'
|
2
|
+
|
3
|
+
class MetaitemsGenerator < Rails::Generators::Base
|
4
|
+
include Rails::Generators::Migration
|
5
|
+
|
6
|
+
source_root File.expand_path('../templates', __FILE__)
|
7
|
+
class_option :playmo, desc: 'To create views for playmo', type: :boolean
|
8
|
+
|
9
|
+
def self.next_migration_number(path)
|
10
|
+
if ActiveRecord::Base.timestamped_migrations
|
11
|
+
Time.now.utc.strftime("%Y%m%d%H%M%S")
|
12
|
+
else
|
13
|
+
"%.3d" % (current_migration_number(dirname) + 1)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def add_model
|
18
|
+
template 'metaitem.rb', 'app/models/metaitem.rb'
|
19
|
+
end
|
20
|
+
|
21
|
+
def add_migration
|
22
|
+
migration_template 'migration.rb', 'db/migrate/create_metaitems'
|
23
|
+
end
|
24
|
+
|
25
|
+
def add_view
|
26
|
+
source = options.playmo? ? 'playmo' : 'default'
|
27
|
+
template "views/#{source}.html.erb", 'app/views/metaitems/edit.html.erb'
|
28
|
+
end
|
29
|
+
|
30
|
+
def add_helper
|
31
|
+
template 'metaitems_helper.rb', 'app/helpers/metaitems_helper.rb'
|
32
|
+
end
|
33
|
+
|
34
|
+
def add_controller
|
35
|
+
template 'metaitems_controller.rb', 'app/controllers/metaitems_controller.rb'
|
36
|
+
end
|
37
|
+
|
38
|
+
def add_route
|
39
|
+
route "resource :metaitem, :only => [:edit, :update]"
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
File without changes
|
File without changes
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class CreateMetaitems < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table :metaitems do |t|
|
4
|
+
t.integer :metaitemable_id
|
5
|
+
t.string :metaitemable_type
|
6
|
+
|
7
|
+
t.string :name
|
8
|
+
t.text :description
|
9
|
+
t.text :keywords
|
10
|
+
t.string :slug
|
11
|
+
|
12
|
+
t.timestamps
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
<h1>Changing metadata</h1>
|
2
|
+
|
3
|
+
<%%= form_for @metaitem, url: metaitem_path, html: { method: :put } do |f| %>
|
4
|
+
<%% if @metaitem.errors.any? %>
|
5
|
+
<div id="error_explanation">
|
6
|
+
<h2><%%= pluralize(@metaitem.errors.count, "error") %> prohibited this metaitem from being saved:</h2>
|
7
|
+
|
8
|
+
<ul>
|
9
|
+
<%% @metaitem.errors.full_messages.each do |msg| %>
|
10
|
+
<li><%%= msg %></li>
|
11
|
+
<%% end %>
|
12
|
+
</ul>
|
13
|
+
</div>
|
14
|
+
<%% end %>
|
15
|
+
|
16
|
+
<div class="field">
|
17
|
+
<%%= f.label :name %><br />
|
18
|
+
<%%= f.text_field :name %>
|
19
|
+
</div>
|
20
|
+
<div class="field">
|
21
|
+
<%%= f.label :description %><br />
|
22
|
+
<%%= f.text_area :description %>
|
23
|
+
</div>
|
24
|
+
<div class="field">
|
25
|
+
<%%= f.label :keywords %><br />
|
26
|
+
<%%= f.text_area :keywords %>
|
27
|
+
</div>
|
28
|
+
<div class="field">
|
29
|
+
<%%= f.label :slug %><br />
|
30
|
+
<%%= f.text_field :slug %>
|
31
|
+
</div>
|
32
|
+
|
33
|
+
<%%= hidden_field_tag 'name', @resource.class.name %>
|
34
|
+
<%%= hidden_field_tag 'id', @resource.id %>
|
35
|
+
|
36
|
+
<div class="actions">
|
37
|
+
<%%= f.submit 'Save metadata' %>
|
38
|
+
</div>
|
39
|
+
<%% end %>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<%%= heading_with_title 'Changing metadata' %>
|
2
|
+
|
3
|
+
<%%= simple_form_for @metaitem, :url => metaitem_path, :html => {:method => :put, :class => 'playmo'} do |f| %>
|
4
|
+
<%%= f.error_notification %>
|
5
|
+
|
6
|
+
<div class="form-inputs">
|
7
|
+
<%%= f.input :name %>
|
8
|
+
<%%= f.input :description %>
|
9
|
+
<%%= f.input :keywords %>
|
10
|
+
<%%= f.input :slug %>
|
11
|
+
<%%= hidden_field_tag 'name', @resource.class.name %>
|
12
|
+
<%%= hidden_field_tag 'id', @resource.id %>
|
13
|
+
</div>
|
14
|
+
|
15
|
+
<div class="form-actions">
|
16
|
+
<%%= f.button :submit, 'Save metadata' %>
|
17
|
+
</div>
|
18
|
+
<%% end %>
|
data/lib/metaitems/version.rb
CHANGED
data/metaitems.gemspec
CHANGED
@@ -9,7 +9,8 @@ Gem::Specification.new do |gem|
|
|
9
9
|
gem.authors = ["Sergey Kucher"]
|
10
10
|
gem.email = ["s.e.kucher@gmail.com"]
|
11
11
|
gem.description = <<eos
|
12
|
-
Gem for
|
12
|
+
Gem for Rails that can generate metaitems to your project.
|
13
|
+
For properly work require ActiveRecord, ERB, Playmo.
|
13
14
|
Metaitems is the functionality (model, view, controller, route) to manage
|
14
15
|
name, description, keywords and url nick for html page.
|
15
16
|
eos
|
@@ -21,5 +22,5 @@ eos
|
|
21
22
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
22
23
|
gem.require_paths = ["lib"]
|
23
24
|
|
24
|
-
gem.
|
25
|
+
gem.add_dependency 'rails', '>= 3.2.11'
|
25
26
|
end
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metaitems
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.4
|
5
|
+
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Sergey Kucher
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-03-
|
12
|
+
date: 2013-03-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -18,7 +18,7 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
21
|
+
version: 3.2.11
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -26,10 +26,11 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ! '>='
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
30
|
-
description: ! "Gem for
|
31
|
-
|
32
|
-
keywords and url nick for
|
29
|
+
version: 3.2.11
|
30
|
+
description: ! "Gem for Rails that can generate metaitems to your project.\nFor properly
|
31
|
+
work require ActiveRecord, ERB, Playmo.\nMetaitems is the functionality (model,
|
32
|
+
view, controller, route) to manage \nname, description, keywords and url nick for
|
33
|
+
html page.\n"
|
33
34
|
email:
|
34
35
|
- s.e.kucher@gmail.com
|
35
36
|
executables: []
|
@@ -41,10 +42,14 @@ files:
|
|
41
42
|
- LICENSE.txt
|
42
43
|
- README.md
|
43
44
|
- Rakefile
|
44
|
-
- lib/generators/
|
45
|
-
- lib/generators/
|
46
|
-
- lib/generators/
|
47
|
-
- lib/generators/
|
45
|
+
- lib/generators/USAGE
|
46
|
+
- lib/generators/metaitems_generator.rb
|
47
|
+
- lib/generators/templates/metaitem.rb
|
48
|
+
- lib/generators/templates/metaitems_controller.rb
|
49
|
+
- lib/generators/templates/metaitems_helper.rb
|
50
|
+
- lib/generators/templates/migration.rb
|
51
|
+
- lib/generators/templates/views/default.html.erb
|
52
|
+
- lib/generators/templates/views/playmo.html.erb
|
48
53
|
- lib/metaitems.rb
|
49
54
|
- lib/metaitems/engine.rb
|
50
55
|
- lib/metaitems/version.rb
|
@@ -63,13 +68,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
63
68
|
version: '0'
|
64
69
|
segments:
|
65
70
|
- 0
|
66
|
-
hash:
|
71
|
+
hash: -4230742362335493138
|
67
72
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
68
73
|
none: false
|
69
74
|
requirements:
|
70
|
-
- - ! '
|
75
|
+
- - ! '>='
|
71
76
|
- !ruby/object:Gem::Version
|
72
|
-
version:
|
77
|
+
version: '0'
|
78
|
+
segments:
|
79
|
+
- 0
|
80
|
+
hash: -4230742362335493138
|
73
81
|
requirements: []
|
74
82
|
rubyforge_project:
|
75
83
|
rubygems_version: 1.8.25
|
@@ -1,25 +0,0 @@
|
|
1
|
-
require 'rails/generators'
|
2
|
-
|
3
|
-
module Metaitems
|
4
|
-
module Generators
|
5
|
-
class InstallGenerator < Rails::Generators::Base
|
6
|
-
source_root File.expand_path('../templates', __FILE__)
|
7
|
-
|
8
|
-
def add_module
|
9
|
-
template 'metaitem.rb', 'app/models/metaitem.rb'
|
10
|
-
end
|
11
|
-
|
12
|
-
def add_view
|
13
|
-
template 'edit.html.erb', 'app/views/metaitems/edit.html.erb'
|
14
|
-
end
|
15
|
-
|
16
|
-
def add_controller
|
17
|
-
template 'metaitem_controller.rb', 'app/controllers/metaitem_controller.rb'
|
18
|
-
end
|
19
|
-
|
20
|
-
def add_route
|
21
|
-
route "resource :metaitem, :only => [:edit, :update]"
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
<h1>Изменить метаданные</h1>
|
2
|
-
|
3
|
-
<%= simple_form_for @metaitem, :url => metaitem_path, :html => {:method => :put } do |f| %>
|
4
|
-
<%= f.error_notification %>
|
5
|
-
|
6
|
-
<div class="form-inputs">
|
7
|
-
<%= f.input :name %>
|
8
|
-
<%= f.input :description %>
|
9
|
-
<%= f.input :keywords %>
|
10
|
-
<%= f.input :slug %>
|
11
|
-
<%= hidden_field_tag 'name', @resource.class.name %>
|
12
|
-
<%= hidden_field_tag 'id', @resource.id %>
|
13
|
-
</div>
|
14
|
-
|
15
|
-
<div class="form-actions">
|
16
|
-
<%= f.button :submit, 'Сохранить метаданные' %>
|
17
|
-
</div>
|
18
|
-
<% end %>
|