schema_comments 0.2.0 → 0.3.0

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.
Files changed (52) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.travis.yml +13 -0
  4. data/Gemfile +11 -8
  5. data/README.md +187 -0
  6. data/Rakefile +6 -0
  7. data/bin/console +14 -0
  8. data/bin/setup +7 -0
  9. data/gemfiles/.gitignore +1 -0
  10. data/gemfiles/Gemfile.rails-4.0 +15 -0
  11. data/gemfiles/Gemfile.rails-4.1 +12 -0
  12. data/gemfiles/Gemfile.rails-4.2 +12 -0
  13. data/lib/annotate_models.rb +12 -4
  14. data/lib/schema_comments/connection_adapters.rb +2 -1
  15. data/lib/schema_comments/railtie.rb +11 -0
  16. data/lib/schema_comments/schema_comment.rb +1 -1
  17. data/lib/schema_comments/schema_dumper/mysql.rb +2 -2
  18. data/lib/schema_comments/version.rb +3 -0
  19. data/lib/schema_comments.rb +2 -0
  20. data/schema_comments.gemspec +28 -0
  21. metadata +52 -194
  22. data/Gemfile.lock +0 -106
  23. data/README.rdoc +0 -150
  24. data/spec/annotate_models_spec.rb +0 -63
  25. data/spec/database.yml +0 -15
  26. data/spec/fake_app.rb +0 -38
  27. data/spec/hash_key_orderable_spec.rb +0 -50
  28. data/spec/human_readable_schema_comments.yml +0 -14
  29. data/spec/i18n_export_spec.rb +0 -44
  30. data/spec/migration_spec.rb +0 -108
  31. data/spec/migrations/valid/001_create_products.rb +0 -17
  32. data/spec/migrations/valid/002_rename_products.rb +0 -10
  33. data/spec/migrations/valid/003_rename_products_again.rb +0 -10
  34. data/spec/migrations/valid/004_remove_price.rb +0 -10
  35. data/spec/migrations/valid/005_change_products_name.rb +0 -10
  36. data/spec/migrations/valid/006_change_products_name_with_comment.rb +0 -10
  37. data/spec/migrations/valid/007_change_comments.rb +0 -12
  38. data/spec/migrations/valid/008_create_users_without_comment.rb +0 -19
  39. data/spec/resources/models/product.rb +0 -2
  40. data/spec/resources/models/product_name.rb +0 -2
  41. data/spec/schema.rb +0 -2
  42. data/spec/schema_comments/connection_adapters_spec.rb +0 -54
  43. data/spec/schema_comments/schema_comment_spec.rb +0 -76
  44. data/spec/schema_comments/schema_comments.yml +0 -10
  45. data/spec/schema_comments/schema_comments_broken_column_comments.yml +0 -7
  46. data/spec/schema_comments/schema_comments_broken_column_hash.yml +0 -10
  47. data/spec/schema_comments/schema_comments_broken_table_comments.yml +0 -13
  48. data/spec/schema_comments/schema_comments_users_without_column_hash.yml +0 -10
  49. data/spec/schema_comments/schema_dumper_spec.rb +0 -92
  50. data/spec/schema_comments.yml +0 -9
  51. data/spec/spec_helper.rb +0 -53
  52. data/spec/yaml_export_spec.rb +0 -52
metadata CHANGED
@@ -1,290 +1,148 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schema_comments
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
- - akimatter
7
+ - akm
9
8
  autorequire:
10
- bindir: bin
9
+ bindir: exe
11
10
  cert_chain: []
12
- date: 2013-01-28 00:00:00.000000000 Z
11
+ date: 2015-04-15 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activesupport
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: 3.0.0
19
+ version: 4.0.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
- version: 3.0.0
26
+ version: 4.0.0
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: activerecord
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
- version: 3.0.0
33
+ version: 4.0.0
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
- version: 3.0.0
40
+ version: 4.0.0
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: bundler
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '0'
47
+ version: '1.9'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
- version: '0'
54
+ version: '1.9'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rake
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
- version: '0'
61
+ version: '10.0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
- version: '0'
68
+ version: '10.0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rspec
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ~>
84
- - !ruby/object:Gem::Version
85
- version: 2.10.0
86
- type: :development
87
- prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - ~>
92
- - !ruby/object:Gem::Version
93
- version: 2.10.0
94
- - !ruby/object:Gem::Dependency
95
- name: rspec-rails
96
- requirement: !ruby/object:Gem::Requirement
97
- none: false
98
- requirements:
99
- - - ~>
100
- - !ruby/object:Gem::Version
101
- version: 2.10.1
102
- type: :development
103
- prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - ~>
108
- - !ruby/object:Gem::Version
109
- version: 2.10.1
110
- - !ruby/object:Gem::Dependency
111
- name: yard
112
- requirement: !ruby/object:Gem::Requirement
113
- none: false
114
72
  requirements:
115
- - - ! '>='
73
+ - - ">="
116
74
  - !ruby/object:Gem::Version
117
75
  version: '0'
118
76
  type: :development
119
77
  prerelease: false
120
78
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
79
  requirements:
123
- - - ! '>='
80
+ - - ">="
124
81
  - !ruby/object:Gem::Version
125
82
  version: '0'
126
- - !ruby/object:Gem::Dependency
127
- name: simplecov
128
- requirement: !ruby/object:Gem::Requirement
129
- none: false
130
- requirements:
131
- - - ! '>='
132
- - !ruby/object:Gem::Version
133
- version: '0'
134
- type: :development
135
- prerelease: false
136
- version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
- requirements:
139
- - - ! '>='
140
- - !ruby/object:Gem::Version
141
- version: '0'
142
- - !ruby/object:Gem::Dependency
143
- name: autotest
144
- requirement: !ruby/object:Gem::Requirement
145
- none: false
146
- requirements:
147
- - - ! '>='
148
- - !ruby/object:Gem::Version
149
- version: '0'
150
- type: :development
151
- prerelease: false
152
- version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
- requirements:
155
- - - ! '>='
156
- - !ruby/object:Gem::Version
157
- version: '0'
158
- - !ruby/object:Gem::Dependency
159
- name: ZenTest
160
- requirement: !ruby/object:Gem::Requirement
161
- none: false
162
- requirements:
163
- - - '='
164
- - !ruby/object:Gem::Version
165
- version: 4.8.3
166
- type: :development
167
- prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
- requirements:
171
- - - '='
172
- - !ruby/object:Gem::Version
173
- version: 4.8.3
174
83
  description: schema_comments generates extra methods dynamically for attribute which
175
- has options
176
- email: akm2000@gmail.com
84
+ has options.
85
+ email:
86
+ - akm2000@gmail.com
177
87
  executables: []
178
88
  extensions: []
179
- extra_rdoc_files:
180
- - LICENSE.txt
181
- - README.rdoc
89
+ extra_rdoc_files: []
182
90
  files:
183
- - .rspec
91
+ - ".gitignore"
92
+ - ".rspec"
93
+ - ".travis.yml"
184
94
  - Gemfile
185
- - Gemfile.lock
186
95
  - LICENSE.txt
187
- - README.rdoc
96
+ - README.md
97
+ - Rakefile
188
98
  - VERSION
99
+ - bin/console
100
+ - bin/setup
101
+ - gemfiles/.gitignore
102
+ - gemfiles/Gemfile.rails-4.0
103
+ - gemfiles/Gemfile.rails-4.1
104
+ - gemfiles/Gemfile.rails-4.2
189
105
  - init.rb
190
106
  - lib/annotate_models.rb
191
107
  - lib/hash_key_orderable.rb
108
+ - lib/schema_comments.rb
192
109
  - lib/schema_comments/base.rb
193
110
  - lib/schema_comments/connection_adapters.rb
194
111
  - lib/schema_comments/migration.rb
195
112
  - lib/schema_comments/migrator.rb
113
+ - lib/schema_comments/railtie.rb
196
114
  - lib/schema_comments/schema.rb
197
115
  - lib/schema_comments/schema_comment.rb
198
- - lib/schema_comments/schema_dumper/mysql.rb
199
116
  - lib/schema_comments/schema_dumper.rb
117
+ - lib/schema_comments/schema_dumper/mysql.rb
200
118
  - lib/schema_comments/task.rb
201
- - lib/schema_comments.rb
119
+ - lib/schema_comments/version.rb
120
+ - schema_comments.gemspec
202
121
  - tasks/annotate_models_tasks.rake
203
122
  - tasks/schema_comments.rake
204
- - spec/annotate_models_spec.rb
205
- - spec/fake_app.rb
206
- - spec/hash_key_orderable_spec.rb
207
- - spec/i18n_export_spec.rb
208
- - spec/migration_spec.rb
209
- - spec/migrations/valid/001_create_products.rb
210
- - spec/migrations/valid/002_rename_products.rb
211
- - spec/migrations/valid/003_rename_products_again.rb
212
- - spec/migrations/valid/004_remove_price.rb
213
- - spec/migrations/valid/005_change_products_name.rb
214
- - spec/migrations/valid/006_change_products_name_with_comment.rb
215
- - spec/migrations/valid/007_change_comments.rb
216
- - spec/migrations/valid/008_create_users_without_comment.rb
217
- - spec/resources/models/product.rb
218
- - spec/resources/models/product_name.rb
219
- - spec/schema.rb
220
- - spec/schema_comments/connection_adapters_spec.rb
221
- - spec/schema_comments/schema_comment_spec.rb
222
- - spec/schema_comments/schema_dumper_spec.rb
223
- - spec/spec_helper.rb
224
- - spec/yaml_export_spec.rb
225
- - spec/database.yml
226
- - spec/human_readable_schema_comments.yml
227
- - spec/schema_comments/schema_comments.yml
228
- - spec/schema_comments/schema_comments_broken_column_comments.yml
229
- - spec/schema_comments/schema_comments_broken_column_hash.yml
230
- - spec/schema_comments/schema_comments_broken_table_comments.yml
231
- - spec/schema_comments/schema_comments_users_without_column_hash.yml
232
- - spec/schema_comments.yml
233
123
  homepage: http://github.com/akm/schema_comments
234
124
  licenses:
235
- - Ruby License
125
+ - MIT
126
+ metadata: {}
236
127
  post_install_message:
237
128
  rdoc_options: []
238
129
  require_paths:
239
130
  - lib
240
131
  required_ruby_version: !ruby/object:Gem::Requirement
241
- none: false
242
132
  requirements:
243
- - - ! '>='
133
+ - - ">="
244
134
  - !ruby/object:Gem::Version
245
135
  version: '0'
246
- segments:
247
- - 0
248
- hash: -2176134516294785649
249
136
  required_rubygems_version: !ruby/object:Gem::Requirement
250
- none: false
251
137
  requirements:
252
- - - ! '>'
138
+ - - ">="
253
139
  - !ruby/object:Gem::Version
254
- version: 1.3.1
140
+ version: '0'
255
141
  requirements: []
256
142
  rubyforge_project:
257
- rubygems_version: 1.8.23
143
+ rubygems_version: 2.4.5
258
144
  signing_key:
259
- specification_version: 3
260
- summary: schema_comments generates extra methods dynamically
261
- test_files:
262
- - spec/annotate_models_spec.rb
263
- - spec/fake_app.rb
264
- - spec/hash_key_orderable_spec.rb
265
- - spec/i18n_export_spec.rb
266
- - spec/migration_spec.rb
267
- - spec/migrations/valid/001_create_products.rb
268
- - spec/migrations/valid/002_rename_products.rb
269
- - spec/migrations/valid/003_rename_products_again.rb
270
- - spec/migrations/valid/004_remove_price.rb
271
- - spec/migrations/valid/005_change_products_name.rb
272
- - spec/migrations/valid/006_change_products_name_with_comment.rb
273
- - spec/migrations/valid/007_change_comments.rb
274
- - spec/migrations/valid/008_create_users_without_comment.rb
275
- - spec/resources/models/product.rb
276
- - spec/resources/models/product_name.rb
277
- - spec/schema.rb
278
- - spec/schema_comments/connection_adapters_spec.rb
279
- - spec/schema_comments/schema_comment_spec.rb
280
- - spec/schema_comments/schema_dumper_spec.rb
281
- - spec/spec_helper.rb
282
- - spec/yaml_export_spec.rb
283
- - spec/database.yml
284
- - spec/human_readable_schema_comments.yml
285
- - spec/schema_comments/schema_comments.yml
286
- - spec/schema_comments/schema_comments_broken_column_comments.yml
287
- - spec/schema_comments/schema_comments_broken_column_hash.yml
288
- - spec/schema_comments/schema_comments_broken_table_comments.yml
289
- - spec/schema_comments/schema_comments_users_without_column_hash.yml
290
- - spec/schema_comments.yml
145
+ specification_version: 4
146
+ summary: schema_comments generates extra methods dynamically for attribute which has
147
+ options.
148
+ test_files: []
data/Gemfile.lock DELETED
@@ -1,106 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- schema_comments (0.2.0)
5
- activerecord (>= 3.0.0)
6
- activesupport (>= 3.0.0)
7
-
8
- GEM
9
- remote: http://rubygems.org/
10
- specs:
11
- ZenTest (4.8.3)
12
- actionpack (3.2.11)
13
- activemodel (= 3.2.11)
14
- activesupport (= 3.2.11)
15
- builder (~> 3.0.0)
16
- erubis (~> 2.7.0)
17
- journey (~> 1.0.4)
18
- rack (~> 1.4.0)
19
- rack-cache (~> 1.2)
20
- rack-test (~> 0.6.1)
21
- sprockets (~> 2.2.1)
22
- activemodel (3.2.11)
23
- activesupport (= 3.2.11)
24
- builder (~> 3.0.0)
25
- activerecord (3.2.11)
26
- activemodel (= 3.2.11)
27
- activesupport (= 3.2.11)
28
- arel (~> 3.0.2)
29
- tzinfo (~> 0.3.29)
30
- activesupport (3.2.11)
31
- i18n (~> 0.6)
32
- multi_json (~> 1.0)
33
- arel (3.0.2)
34
- autotest (4.4.6)
35
- ZenTest (>= 4.4.1)
36
- builder (3.0.4)
37
- diff-lcs (1.1.3)
38
- erubis (2.7.0)
39
- hike (1.2.1)
40
- i18n (0.6.1)
41
- journey (1.0.4)
42
- json (1.7.6)
43
- multi_json (1.5.0)
44
- mysql (2.9.0)
45
- mysql2 (0.3.11)
46
- rack (1.4.4)
47
- rack-cache (1.2)
48
- rack (>= 0.4)
49
- rack-ssl (1.3.2)
50
- rack
51
- rack-test (0.6.2)
52
- rack (>= 1.0)
53
- railties (3.2.11)
54
- actionpack (= 3.2.11)
55
- activesupport (= 3.2.11)
56
- rack-ssl (~> 1.3.2)
57
- rake (>= 0.8.7)
58
- rdoc (~> 3.4)
59
- thor (>= 0.14.6, < 2.0)
60
- rake (10.0.3)
61
- rdoc (3.12)
62
- json (~> 1.4)
63
- rspec (2.10.0)
64
- rspec-core (~> 2.10.0)
65
- rspec-expectations (~> 2.10.0)
66
- rspec-mocks (~> 2.10.0)
67
- rspec-core (2.10.1)
68
- rspec-expectations (2.10.0)
69
- diff-lcs (~> 1.1.3)
70
- rspec-mocks (2.10.1)
71
- rspec-rails (2.10.1)
72
- actionpack (>= 3.0)
73
- activesupport (>= 3.0)
74
- railties (>= 3.0)
75
- rspec (~> 2.10.0)
76
- simplecov (0.7.1)
77
- multi_json (~> 1.0)
78
- simplecov-html (~> 0.7.1)
79
- simplecov-html (0.7.1)
80
- sprockets (2.2.2)
81
- hike (~> 1.2)
82
- multi_json (~> 1.0)
83
- rack (~> 1.0)
84
- tilt (~> 1.1, != 1.3.0)
85
- sqlite3 (1.3.7)
86
- thor (0.17.0)
87
- tilt (1.3.3)
88
- tzinfo (0.3.35)
89
- yard (0.8.3)
90
-
91
- PLATFORMS
92
- ruby
93
-
94
- DEPENDENCIES
95
- ZenTest (= 4.8.3)
96
- autotest
97
- bundler
98
- mysql
99
- mysql2
100
- rake
101
- rspec (~> 2.10.0)
102
- rspec-rails (~> 2.10.1)
103
- schema_comments!
104
- simplecov
105
- sqlite3
106
- yard
data/README.rdoc DELETED
@@ -1,150 +0,0 @@
1
- = SchemaComments {<img src="https://secure.travis-ci.org/akm/schema_comments.png" />}[http://travis-ci.org/akm/schema_comments]
2
-
3
- == Install
4
-
5
- === as a plugin
6
- ruby script/plugin install git://github.com/akm/schema_comments.git
7
-
8
- === as a gem
9
- insert following line to config/environment.rb
10
- config.gem 'schema_comments', :version => '0.1.4'
11
- and
12
- $ sudo rake gems:install
13
-
14
- Or install gem manually
15
-
16
- $ sudo gem install schema_comments
17
-
18
- And make lib/tasks/schema_comments.rake
19
- require 'schema_comments/task'
20
-
21
-
22
- == Configuration
23
- If you install schema_comments as a gem, must create config/initializers/schema_comments.rb like this:
24
- require 'schema_comments'
25
- SchemaComments.setup
26
-
27
-
28
- == overview
29
- schema_commentsプラグインを使うと、テーブルとカラムにコメントを記述することができます。
30
-
31
- class CreateProducts < ActiveRecord::Migration
32
- def self.up
33
- create_table "products", :comment => '商品' do |t|
34
- t.string "product_type_cd", :comment => '種別コード'
35
- t.integer "price", :comment => "価格"
36
- t.string "name", :comment => "商品名"
37
- t.datetime "created_at", :comment => "登録日時"
38
- t.datetime "updated_at", :comment => "更新日時"
39
- end
40
- end
41
-
42
- def self.down
43
- drop_table "products"
44
- end
45
- end
46
-
47
- こんな感じ。
48
-
49
- でこのようなマイグレーションを実行すると、db/schema.rb には、
50
- コメントが設定されているテーブル、カラムは以下のように出力されます。
51
-
52
- ActiveRecord::Schema.define(:version => 0) do
53
- create_table "products", :force => true, :comment => '商品' do |t|
54
- t.string "product_type_cd", :comment => '種別コード'
55
- t.integer "price", :comment => "価格"
56
- t.string "name", :comment => "商品名"
57
- t.datetime "created_at", :comment => "登録日時"
58
- t.datetime "updated_at", :comment => "更新日時"
59
- end
60
- end
61
-
62
-
63
- コメントは、以下のメソッドで使用することが可能です。
64
-
65
- columns, create_table, drop_table, rename_table
66
- remove_column, add_column, change_column
67
-
68
-
69
- == コメントはどこに保存されるのか
70
- db/schema_comments.yml にYAML形式で保存されます。
71
- あまり推奨しませんが、もしマイグレーションにコメントを記述するのを忘れてしまった場合、db/schema_comments.yml
72
- を直接編集した後、rake db:schema:dumpやマイグレーションを実行すると、db/schema.rbのコメントに反映されます。
73
-
74
-
75
- == I18nへの対応
76
- rake i18n:schema_comments:update_config_localeタスクを実行すると、i18n用のYAMLを更新できます。
77
-
78
- rake i18n:schema_comments:update_config_locale LOCALE=ja でデフォルトではconfig/locales/ja.ymlを更新します。
79
-
80
- 毎回LOCALEを指定するのが面倒な場合は、config/initializers/locale.rb に
81
- I18n.default_locale = 'ja'
82
- という記述を追加しておくと良いでしょう。
83
-
84
- また出力先のYAMLのPATHを指定したい場合、YAML_PATHで指定が可能です。
85
- rake i18n:schema_comments:update_config_locale LOCALE=ja YAML_PATH=/path/to/yaml
86
-
87
- === コメント内コメント
88
- コメント中の ((( から ))) は反映されませんので、モデル名/属性名に含めたくない箇所は ((( と ))) で括ってください。
89
- ((( ))) と同様に[[[ ]]]も使用できます。
90
- 例えば以下のようにdb/schema.rbに出力されている場合、
91
- ActiveRecord::Schema.define(:version => 0) do
92
- create_table "products", :force => true, :comment => '商品' do |t|
93
- t.string "product_type_cd", :comment => '種別コード(((01:書籍, 02:靴, 03:パソコン)))'
94
- t.integer "price", :comment => "価格"
95
- t.string "name", :comment => "商品名"
96
- t.datetime "created_at", :comment => "登録日時"
97
- t.datetime "updated_at", :comment => "更新日時"
98
- end
99
- end
100
-
101
- rake i18n:schema_comments:update_config_locale LOCALE=ja
102
- とすると、以下のように出力されます。
103
- ja:
104
- activerecord:
105
- attributes:
106
- product:
107
- product_type_cd: "種別コード"
108
- price: "価格"
109
- name: "商品名"
110
- created_at: "登録日時"
111
- updated_at: "更新日時"
112
-
113
-
114
-
115
- == MySQLのビュー
116
- MySQLのビューを使用した場合、元々MySQLではSHOW TABLES でビューも表示してしまうため、
117
- ビューはテーブルとしてSchemaDumperに認識され、development環境ではMySQLのビューとして作成されているのに、
118
- test環境ではテーブルとして作成されてしまい、テストが正しく動かないことがあります。
119
- これを避けるため、schema_commentsでは、db/schema.rbを出力する際、テーブルに関する記述の後に、CREATE VIEWを行う記述を追加します。
120
-
121
-
122
- == annotate_models
123
- rake db:annotate で以下のようなコメントを、モデル、テスト、フィクスチャといったモデルに関係の強いファイルの
124
- 先頭に追加します。
125
- # == Schema Info
126
- #
127
- # Schema version: 20090721185959
128
- #
129
- # Table name: books # 書籍
130
- #
131
- # id :integer not null, primary key
132
- # title :string(100) not null # タイトル
133
- # size :integer not null, default(1) # 判型
134
- # price :decimal(17, 14) not null, default(0.0) # 価格
135
- # created_at :datetime # 登録日時
136
- # updated_at :datetime # 更新日時
137
- #
138
- # =================
139
- #
140
-
141
- また、rake db:updateで、rake db:migrateとrake db:annotateを実行します。
142
-
143
- annotate_modelsは、達人プログラマーのDave Thomasさんが公開しているプラグインです。
144
- http://repo.pragprog.com/svn/Public/plugins/annotate_models/
145
-
146
- 本プラグインでは、それを更に拡張したDave Boltonさんのプラグイン(
147
- http://github.com/rotuka/annotate_models )をベースに拡張を加えています。
148
-
149
-
150
- Copyright (c) 2008 Takeshi AKIMA, released under the Ruby License