rango 0.1.1.2.10 → 0.1.1.2.11
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +7 -0
- data/README.textile +2 -0
- data/bin/rango +5 -2
- data/lib/rango.rb +47 -78
- data/lib/rango/core_ext.rb +21 -0
- data/lib/rango/gv/router.rb +42 -0
- data/lib/rango/gv/scaffolding.rb +53 -0
- data/lib/rango/gv/static.rb +4 -5
- data/lib/rango/interactive.rb +18 -0
- data/lib/rango/logger.rb +14 -0
- data/lib/rango/mini.rb +0 -6
- data/lib/rango/mini_render.rb +16 -0
- data/lib/rango/mixins/logger.rb +19 -0
- data/lib/rango/mixins/message.rb +3 -3
- data/lib/rango/mixins/render.rb +5 -5
- data/lib/rango/mixins/rendering.rb +13 -13
- data/lib/rango/orm/README.textile +24 -0
- data/lib/rango/orm/tasks/datamapper.rake +40 -14
- data/lib/rango/orm/tasks/sequel.rake +21 -1
- data/lib/rango/path.rb +13 -0
- data/lib/rango/rack/request.rb +8 -4
- data/lib/rango/templates/helpers.rb +84 -86
- data/lib/rango/templates/template.rb +50 -53
- data/lib/rango/version.rb +1 -1
- data/spec/rango/controller_spec.rb +1 -0
- data/spec/rango/mixins/message_spec.rb +4 -4
- data/spec/rango/mixins/render_spec.rb +4 -4
- data/spec/rango/project_spec.rb +2 -0
- data/spec/rango/templates/template_spec.rb +18 -18
- data/stubs/{project → stack}/content/Gemfile.rbt +0 -0
- data/stubs/{project → stack}/content/Rakefile.rbt +0 -0
- data/stubs/{project → stack}/content/TODO.txt +0 -0
- data/stubs/{project → stack}/content/config.ru.rbt +0 -0
- data/stubs/{project → stack}/content/init.rb.rbt +4 -7
- data/stubs/{app → stack}/content/models.rb.rbt +0 -0
- data/stubs/stack/content/settings_local.rb.rbt +20 -0
- data/stubs/{project → stack}/content/spec/%name%/init_spec.rb.rbt +0 -0
- data/stubs/{project → stack}/content/spec/%name%/models_spec.rb.rbt +0 -0
- data/stubs/{project → stack}/content/spec/%name%/views_spec.rb.rbt +0 -0
- data/stubs/{project → stack}/content/spec/spec.opts +0 -0
- data/stubs/{project → stack}/content/spec/spec_helper.rb +0 -0
- data/stubs/{project → stack}/content/templates/base.html.haml.rbt +0 -0
- data/stubs/stack/content/templates/errors/404.html.haml +1 -0
- data/stubs/stack/content/templates/errors/500.html.haml +1 -0
- data/stubs/{project → stack}/content/templates/index.html.haml +0 -0
- data/stubs/{app → stack}/content/views.rb.rbt +13 -0
- data/stubs/{app → stack}/metadata.yml +0 -0
- data/stubs/{project → stack}/postprocess.rb +0 -0
- data/stubs/{project → stack}/setup.rb +0 -0
- metadata +82 -43
- data/lib/rango/orm/adapter.rb +0 -46
- data/lib/rango/orm/adapters/datamapper.rb +0 -26
- data/lib/rango/orm/adapters/sequel.rb +0 -18
- data/lib/rango/orm/orm.txt +0 -11
- data/lib/rango/orm/support/datamapper/support.rb +0 -17
- data/stubs/app/content/init.rb.rbt +0 -10
- data/stubs/app/setup.rb +0 -13
- data/stubs/bigapp/content/init.rb +0 -0
- data/stubs/bigapp/content/models/%model%.rb.rbt +0 -6
- data/stubs/bigapp/content/views/%controller%.rb.rbt +0 -10
- data/stubs/bigapp/content/views/application.rb +0 -0
- data/stubs/bigapp/metadata.yml +0 -3
- data/stubs/bigapp/setup.rb +0 -12
- data/stubs/project/content/settings.rb +0 -13
- data/stubs/project/content/settings_local.rb.rbt +0 -6
- data/stubs/project/metadata.yml +0 -3
data/lib/rango/orm/adapter.rb
DELETED
@@ -1,46 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
module Rango
|
4
|
-
module ORM
|
5
|
-
class Adapter
|
6
|
-
def initialize
|
7
|
-
Project.orm = self
|
8
|
-
end
|
9
|
-
|
10
|
-
# @return [String] "datamapper"
|
11
|
-
def name
|
12
|
-
self.class.name.split("::").last
|
13
|
-
end
|
14
|
-
|
15
|
-
def load
|
16
|
-
raise NotImplementedError, "You have to implement Adapter#load method!"
|
17
|
-
end
|
18
|
-
|
19
|
-
def connect
|
20
|
-
raise NotImplementedError, "You have to implement Adapter#connect method!"
|
21
|
-
end
|
22
|
-
|
23
|
-
# DB[:table]
|
24
|
-
attr_reader :connection
|
25
|
-
|
26
|
-
def form_for(*)
|
27
|
-
raise NotImplementedError
|
28
|
-
end
|
29
|
-
|
30
|
-
def finish
|
31
|
-
Rango.logger.info("Database connection established with #{Project.orm} and database #{path}")
|
32
|
-
end
|
33
|
-
|
34
|
-
protected
|
35
|
-
def try_connect(&block)
|
36
|
-
adapter = Project.settings.database_adapter
|
37
|
-
database = Project.settings.database_name
|
38
|
-
block.call(adapter, database)
|
39
|
-
rescue Exception => exception
|
40
|
-
Rango.logger.exception(exception)
|
41
|
-
Rango.logger.fatal("Database connection can't be established, exiting")
|
42
|
-
exit 1
|
43
|
-
end
|
44
|
-
end
|
45
|
-
end
|
46
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
module Rango
|
4
|
-
module ORM
|
5
|
-
class Datamapper
|
6
|
-
def self.models
|
7
|
-
klasses = Array.new
|
8
|
-
ObjectSpace.each_object(Class) do |klass|
|
9
|
-
klasses.push(klass) if klass.included_modules.include?(DataMapper::Resource)
|
10
|
-
end
|
11
|
-
klasses
|
12
|
-
end
|
13
|
-
|
14
|
-
def load
|
15
|
-
Rango.dependency "dm-core", gem: true
|
16
|
-
require_relative "support"
|
17
|
-
end
|
18
|
-
|
19
|
-
def connect
|
20
|
-
try_connect do |adapter, database|
|
21
|
-
DataMapper.setup(:default, "#{adapter}://#{database}")
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
module Rango
|
4
|
-
module ORM
|
5
|
-
class Sequel
|
6
|
-
def load
|
7
|
-
Rango.dependency "sequel", gem: true
|
8
|
-
require_relative "support"
|
9
|
-
end
|
10
|
-
|
11
|
-
def connect
|
12
|
-
try_connect do |adapter, database|
|
13
|
-
Sequel.connect("#{adapter}://#{database}")
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
data/lib/rango/orm/orm.txt
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
=== Core Support ===
|
2
|
-
- tasks for migrations, creating db etc
|
3
|
-
- Project.orm (adapter object) so plugins knows which ORM is in use and can use it's methods
|
4
|
-
? environments support ... settings_local.rb
|
5
|
-
|
6
|
-
=== Extended Support ===
|
7
|
-
? custom fields (slugfield)
|
8
|
-
? "action orm" layer for form_for etc
|
9
|
-
- Rango.orm.form_for ... well, maybe better will be Rango.orm.errors etc (see ActionORM)
|
10
|
-
- or support just ModelForms
|
11
|
-
- or both ones
|
@@ -1,17 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
# FIXME: this code is already in another file
|
4
|
-
# FIXME: DataMapper vs. Datamapper
|
5
|
-
module Rango
|
6
|
-
class ORM
|
7
|
-
class DataMapper
|
8
|
-
class << self
|
9
|
-
def models
|
10
|
-
ObjectSpace.classes.map do |klass|
|
11
|
-
klass.included(DataMapper::Resource)
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
data/stubs/app/setup.rb
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
# This hook will be executed in context of current generator object before templater start to generate new files.
|
4
|
-
# You can update context hash and register hooks. Don't forget to use merge! instead of merge, because you are
|
5
|
-
# manipulating with one object, rather than returning new one.
|
6
|
-
|
7
|
-
# rango create app blog --models=post,tag --controllers=posts,tags --orm=sequel
|
8
|
-
hook do |generator, context|
|
9
|
-
context[:orm] = "datamapper" unless context.has_key?(:orm)
|
10
|
-
models = [context[:models]].compact.flatten # the flatten thing: if you have --models=post, it would be just a string
|
11
|
-
controllers = [context[:controllers]].compact.flatten
|
12
|
-
context.merge!(models: models, controllers: controllers)
|
13
|
-
end
|
File without changes
|
File without changes
|
data/stubs/bigapp/metadata.yml
DELETED
data/stubs/bigapp/setup.rb
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
# This hook will be executed in context of current generator object before templater start to generate new files.
|
4
|
-
# You can update context hash and register hooks. Don't forget to use merge! instead of merge, because you are
|
5
|
-
# manipulating with one object, rather than returning new one.
|
6
|
-
|
7
|
-
# rango create app blog --models=post,tag --controllers=posts,tags
|
8
|
-
hook do |generator, context|
|
9
|
-
models = context[:models] || Array.new
|
10
|
-
controllers = context[:controllers] || Array.new
|
11
|
-
context.merge!(models: models, controllers: controllers)
|
12
|
-
end
|
data/stubs/project/metadata.yml
DELETED