haml-rails 0.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.
- data/README.md +3 -0
- data/lib/generators/haml.rb +9 -0
- data/lib/generators/haml/controller/controller_generator.rb +16 -0
- data/lib/generators/haml/controller/templates/view.html.haml +2 -0
- data/lib/generators/haml/install/install_generator.rb +14 -0
- data/lib/generators/haml/install/templates/config/initializers/haml.rb.tt +4 -0
- data/lib/generators/haml/scaffold/scaffold_generator.rb +43 -0
- data/lib/generators/haml/scaffold/templates/_form.html.haml.erb +15 -0
- data/lib/generators/haml/scaffold/templates/edit.html.haml.erb +7 -0
- data/lib/generators/haml/scaffold/templates/index.html.haml.erb +23 -0
- data/lib/generators/haml/scaffold/templates/new.html.haml.erb +5 -0
- data/lib/generators/haml/scaffold/templates/show.html.haml.erb +9 -0
- data/lib/haml-rails.rb +7 -0
- metadata +76 -0
data/README.md
ADDED
@@ -0,0 +1,3 @@
|
|
1
|
+
# Haml-rails
|
2
|
+
|
3
|
+
Haml-rails provides Haml generators for Rails 3. It also enables Haml as the templating engine for you, so you don't have to screw around in your own application.rb when your Gemfile already clearly indicated what templating engine you have installed. Hurrah.
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'generators/haml'
|
2
|
+
require 'rails/generators/erb/controller/controller_generator'
|
3
|
+
|
4
|
+
module Haml
|
5
|
+
module Generators
|
6
|
+
class ControllerGenerator < Erb::Generators::ControllerGenerator
|
7
|
+
extend TemplatePath
|
8
|
+
|
9
|
+
protected
|
10
|
+
|
11
|
+
def handler
|
12
|
+
:haml
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require 'generators/haml'
|
2
|
+
|
3
|
+
module Haml
|
4
|
+
module Generators
|
5
|
+
class InstallGenerator < Rails::Generators::Base
|
6
|
+
extend TemplatePath
|
7
|
+
|
8
|
+
def copy_initializer_files
|
9
|
+
template "config/initializers/haml.rb.tt", "config/initializers/haml.rb"
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require 'generators/haml'
|
2
|
+
require 'rails/generators/erb/scaffold/scaffold_generator'
|
3
|
+
|
4
|
+
module Haml
|
5
|
+
module Generators
|
6
|
+
class ScaffoldGenerator < Erb::Generators::ScaffoldGenerator
|
7
|
+
extend TemplatePath
|
8
|
+
|
9
|
+
def copy_view_files
|
10
|
+
views = available_views
|
11
|
+
views.delete("index") if options[:singleton]
|
12
|
+
|
13
|
+
views.each do |view|
|
14
|
+
filename = filename_with_extensions(view)
|
15
|
+
template template_filename_with_extensions(view), File.join("app/views", controller_file_path, filename)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
hook_for :form_builder, :as => :scaffold
|
20
|
+
|
21
|
+
def copy_form_file
|
22
|
+
if options[:form_builder].nil?
|
23
|
+
filename = filename_with_extensions("_form")
|
24
|
+
template template_filename_with_extensions("_form"), File.join("app/views", controller_file_path, filename)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
protected
|
29
|
+
|
30
|
+
def available_views
|
31
|
+
%w(index edit show new)
|
32
|
+
end
|
33
|
+
|
34
|
+
def handler
|
35
|
+
:haml
|
36
|
+
end
|
37
|
+
|
38
|
+
def template_filename_with_extensions(name)
|
39
|
+
[name, format, handler, :erb].compact.join(".")
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
= form_for @<%= singular_name %> do |f|
|
2
|
+
-if @<%= singular_name %>.errors.any?
|
3
|
+
#errorExplanation
|
4
|
+
%h2= "#{pluralize(@<%= singular_name %>.errors.count, "error")} prohibited this <%= singular_name %> from being saved:"
|
5
|
+
%ul
|
6
|
+
- @<%= singular_name %>.errors.full_messages.each do |msg|
|
7
|
+
%li= msg
|
8
|
+
|
9
|
+
<% for attribute in attributes -%>
|
10
|
+
.field
|
11
|
+
= f.label :<%= attribute.name %>
|
12
|
+
= f.<%= attribute.field_type %> :<%= attribute.name %>
|
13
|
+
<% end -%>
|
14
|
+
.actions
|
15
|
+
= f.submit 'Save'
|
@@ -0,0 +1,23 @@
|
|
1
|
+
%h1 Listing <%= plural_name %>
|
2
|
+
|
3
|
+
%table
|
4
|
+
%tr
|
5
|
+
<% for attribute in attributes -%>
|
6
|
+
%th <%= attribute.human_name %>
|
7
|
+
<% end -%>
|
8
|
+
%th
|
9
|
+
%th
|
10
|
+
%th
|
11
|
+
|
12
|
+
- @<%= plural_name %>.each do |<%= singular_name %>|
|
13
|
+
%tr
|
14
|
+
<% for attribute in attributes -%>
|
15
|
+
%td= <%= singular_name %>.<%= attribute.name %>
|
16
|
+
<% end -%>
|
17
|
+
%td= link_to 'Show', <%= singular_name %>
|
18
|
+
%td= link_to 'Edit', edit_<%= singular_name %>_path(<%= singular_name %>)
|
19
|
+
%td= link_to 'Destroy', <%= singular_name %>, :confirm => 'Are you sure?', :method => :delete
|
20
|
+
|
21
|
+
%br
|
22
|
+
|
23
|
+
= link_to 'New <%= singular_name %>', new_<%= singular_name %>_path
|
data/lib/haml-rails.rb
ADDED
metadata
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: haml-rails
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 1
|
8
|
+
version: "0.1"
|
9
|
+
platform: ruby
|
10
|
+
authors:
|
11
|
+
- "Andr\xC3\xA9 Arko"
|
12
|
+
autorequire:
|
13
|
+
bindir: bin
|
14
|
+
cert_chain: []
|
15
|
+
|
16
|
+
date: 2010-08-13 00:00:00 -07:00
|
17
|
+
default_executable:
|
18
|
+
dependencies: []
|
19
|
+
|
20
|
+
description: Haml-rails provides Haml generators for Rails 3. It also enables Haml as the templating engine for you, so you don't have to screw around in your own application.rb when your Gemfile already clearly indicated what templating engine you have installed. Hurrah.
|
21
|
+
email:
|
22
|
+
- andre@arko.net
|
23
|
+
executables: []
|
24
|
+
|
25
|
+
extensions: []
|
26
|
+
|
27
|
+
extra_rdoc_files: []
|
28
|
+
|
29
|
+
files:
|
30
|
+
- README.md
|
31
|
+
- lib/generators/haml.rb
|
32
|
+
- lib/generators/haml/controller/controller_generator.rb
|
33
|
+
- lib/generators/haml/controller/templates/view.html.haml
|
34
|
+
- lib/generators/haml/install/install_generator.rb
|
35
|
+
- lib/generators/haml/install/templates/config/initializers/haml.rb.tt
|
36
|
+
- lib/generators/haml/scaffold/scaffold_generator.rb
|
37
|
+
- lib/generators/haml/scaffold/templates/_form.html.haml.erb
|
38
|
+
- lib/generators/haml/scaffold/templates/edit.html.haml.erb
|
39
|
+
- lib/generators/haml/scaffold/templates/index.html.haml.erb
|
40
|
+
- lib/generators/haml/scaffold/templates/new.html.haml.erb
|
41
|
+
- lib/generators/haml/scaffold/templates/show.html.haml.erb
|
42
|
+
- lib/haml-rails.rb
|
43
|
+
has_rdoc: true
|
44
|
+
homepage: http://github.com/indirect/haml-rails
|
45
|
+
licenses: []
|
46
|
+
|
47
|
+
post_install_message:
|
48
|
+
rdoc_options: []
|
49
|
+
|
50
|
+
require_paths:
|
51
|
+
- lib
|
52
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
segments:
|
57
|
+
- 0
|
58
|
+
version: "0"
|
59
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
segments:
|
64
|
+
- 1
|
65
|
+
- 3
|
66
|
+
- 6
|
67
|
+
version: 1.3.6
|
68
|
+
requirements: []
|
69
|
+
|
70
|
+
rubyforge_project: haml-rails
|
71
|
+
rubygems_version: 1.3.6
|
72
|
+
signing_key:
|
73
|
+
specification_version: 3
|
74
|
+
summary: let your Gemfile do the configuring
|
75
|
+
test_files: []
|
76
|
+
|