Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
ec55e59e
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
ec55e59e
编写于
7月 02, 2009
作者:
J
José Valim
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Updated commands.
上级
776220e1
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
64 addition
and
40 deletion
+64
-40
railties/bin/gen
railties/bin/gen
+2
-26
railties/lib/commands/destroy.rb
railties/lib/commands/destroy.rb
+8
-4
railties/lib/commands/generate.rb
railties/lib/commands/generate.rb
+8
-4
railties/lib/commands/update.rb
railties/lib/commands/update.rb
+9
-3
railties/lib/generators.rb
railties/lib/generators.rb
+37
-3
未找到文件。
railties/bin/gen
浏览文件 @
ec55e59e
...
...
@@ -10,33 +10,9 @@ end
require File.dirname(__FILE__) + '/../lib/generators'
if ARGV.size == 0
rails = Rails::Generators.builtin.map do |group, name|
name if group == "rails"
end
rails.compact!
rails.sort!
others = Rails::Generators.builtin.map do |group, name|
"#{group}:#{name}" unless rails.include?(name)
end.compact
others.sort!
puts "Please select a generator."
puts "Builtin: #{rails.join(', ')}."
puts "Others: #{others.join(', ')}." unless others.empty?
Rails::Generators.help
exit
end
Rails::Generators.builtin.each do |group, name|
require "generators/#{group}/#{name}/#{name}_generator"
end
name = ARGV.shift
if klass = Rails::Generators.find_by_namespace(name, "rails")
ARGV << "--help" if klass.arguments.any? { |a| a.required? } && ARGV.empty?
klass.start
else
puts "Could not find generator #{name}."
end
Rails::Generators.invoke name, ARGV, :invoke
railties/lib/commands/destroy.rb
浏览文件 @
ec55e59e
require
"
#{
RAILS_ROOT
}
/config/environment"
require
'rails_generator'
require
'rails_generator/scripts/destroy'
require
'generators'
ARGV
.
shift
if
[
'--help'
,
'-h'
].
include?
(
ARGV
[
0
])
Rails
::
Generator
::
Scripts
::
Destroy
.
new
.
run
(
ARGV
)
if
ARGV
.
size
==
0
Rails
::
Generators
.
help
exit
end
name
=
ARGV
.
shift
Rails
::
Generators
.
invoke
name
,
ARGV
,
:revoke
railties/lib/commands/generate.rb
浏览文件 @
ec55e59e
require
"
#{
RAILS_ROOT
}
/config/environment"
require
'rails_generator'
require
'rails_generator/scripts/generate'
require
'generators'
ARGV
.
shift
if
[
'--help'
,
'-h'
].
include?
(
ARGV
[
0
])
Rails
::
Generator
::
Scripts
::
Generate
.
new
.
run
(
ARGV
)
if
ARGV
.
size
==
0
Rails
::
Generators
.
help
exit
end
name
=
ARGV
.
shift
Rails
::
Generators
.
invoke
name
,
ARGV
,
:invoke
railties/lib/commands/update.rb
浏览文件 @
ec55e59e
require
"
#{
RAILS_ROOT
}
/config/environment"
require
'rails_generator'
require
'rails_generator/scripts/update'
Rails
::
Generator
::
Scripts
::
Update
.
new
.
run
(
ARGV
)
require
'generators'
if
ARGV
.
size
==
0
Rails
::
Generators
.
help
exit
end
name
=
ARGV
.
shift
Rails
::
Generators
.
invoke
name
,
ARGV
,
:skip
railties/lib/generators.rb
浏览文件 @
ec55e59e
...
...
@@ -25,7 +25,7 @@ def self.builtin
#
# ==== Examples
#
#
lookup
_by_namespace :webrat, :rails, :integration
#
find
_by_namespace :webrat, :rails, :integration
#
# Will search for the following generators:
#
...
...
@@ -36,7 +36,7 @@ def self.builtin
#
# Finally, it deals with one kind of shortcut:
#
#
lookup
_by_namespace "test_unit:model"
#
find
_by_namespace "test_unit:model"
#
# It will search for generators at:
#
...
...
@@ -51,12 +51,46 @@ def self.find_by_namespace(name, base=nil, context=nil)
attempts
<<
name
attempts
.
each
do
|
namespace
|
klass
,
task
=
Thor
::
Util
.
find_by_namespace
(
namespace
)
klass
=
Thor
::
Util
.
find_by_namespace
(
namespace
)
return
klass
if
klass
end
nil
end
# Show help message with available generators.
#
def
self
.
help
rails
=
Rails
::
Generators
.
builtin
.
map
do
|
group
,
name
|
name
if
group
==
"rails"
end
rails
.
compact!
rails
.
sort!
puts
"Please select a generator."
puts
"Builtin:
#{
rails
.
join
(
', '
)
}
."
# TODO Show others after lookup is implemented
# puts "Others: #{others.join(', ')}."
end
# Receives a namespace, arguments and the behavior to invoke the generator.
# It's used as the default entry point for generate, destroy and update
# commands.
#
def
self
.
invoke
(
namespace
,
args
=
ARGV
,
behavior
=
:invoke
)
# Load everything right now ...
builtin
.
each
do
|
group
,
name
|
require
"generators/
#{
group
}
/
#{
name
}
/
#{
name
}
_generator"
end
if
klass
=
find_by_namespace
(
namespace
,
"rails"
)
args
<<
"--help"
if
klass
.
arguments
.
any?
{
|
a
|
a
.
required?
}
&&
args
.
empty?
klass
.
start
args
,
:behavior
=>
behavior
else
puts
"Could not find generator
#{
namespace
}
."
end
end
end
end
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录