Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
75fbd739
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,发现更多精彩内容 >>
提交
75fbd739
编写于
6月 23, 2009
作者:
J
José Valim
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add GeneratedAttribute.
上级
d4ec0915
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
55 addition
and
0 deletion
+55
-0
railties/lib/generator/generated_attribute.rb
railties/lib/generator/generated_attribute.rb
+44
-0
railties/lib/generator/named_base.rb
railties/lib/generator/named_base.rb
+11
-0
未找到文件。
railties/lib/generator/generated_attribute.rb
0 → 100644
浏览文件 @
75fbd739
module
Rails
module
Generators
class
GeneratedAttribute
attr_accessor
:name
,
:type
,
:column
def
initialize
(
name
,
type
)
@name
,
@type
=
name
,
type
.
to_sym
@column
=
ActiveRecord
::
ConnectionAdapters
::
Column
.
new
(
@name
,
nil
,
@type
)
end
def
field_type
@field_type
||=
case
type
when
:integer
,
:float
,
:decimal
then
:text_field
when
:datetime
,
:timestamp
,
:time
then
:datetime_select
when
:date
then
:date_select
when
:string
then
:text_field
when
:text
then
:text_area
when
:boolean
then
:check_box
else
:text_field
end
end
def
default
@default
||=
case
type
when
:integer
then
1
when
:float
then
1.5
when
:decimal
then
"9.99"
when
:datetime
,
:timestamp
,
:time
then
Time
.
now
.
to_s
(
:db
)
when
:date
then
Date
.
today
.
to_s
(
:db
)
when
:string
then
"MyString"
when
:text
then
"MyText"
when
:boolean
then
false
else
""
end
end
def
reference?
[
:references
,
:belongs_to
].
include?
(
self
.
type
)
end
end
end
end
railties/lib/generator/named_base.rb
浏览文件 @
75fbd739
require
'generator/base'
require
'generator/generated_attribute'
module
Rails
module
Generators
...
...
@@ -7,11 +8,13 @@ class NamedBase < Base
attr_reader
:class_name
,
:singular_name
,
:plural_name
,
:table_name
,
:class_path
,
:file_path
,
:class_nesting
,
:class_nesting_depth
alias
:file_name
:singular_name
def
initialize
(
*
args
)
super
assign_names!
parse_attributes!
if
respond_to?
(
:attributes
)
end
protected
...
...
@@ -35,6 +38,14 @@ def assign_names!
end
end
# Convert attributes hash into an array with GeneratedAttribute objects.
#
def
parse_attributes!
attributes
.
map!
do
|
name
,
type
|
Rails
::
Generator
::
GeneratedAttribute
.
new
(
name
,
type
)
end
end
# Extract modules from filesystem-style or ruby-style path. Both
# good/fun/stuff and Good::Fun::Stuff produce the same results.
#
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录