バナー配信システムを作る(2)

次にキャンペーンにバナーを結び付けたいのだが、WindowsでRMagickが動かないのでとりあえずテキストを配信することにする。

bannersテーブルをscaffold

scaffoldしようとするとなぜかいまさらsqlite3-rubyがないと言われるので、bundleでinstallする。bundle便利

D:\public_html\opt>rails g scaffold banner campaign_id:integer image:string
Could not find sqlite3-ruby-1.3.1-x86-mingw32 in any of the sources
Try running `bundle install`.

D:\public_html\opt>bundle install
Fetching source index for http://rubygems.org/
Using rake (0.8.7)
Using abstract (1.0.0)
Using activesupport (3.0.0)
Using builder (2.1.2)
Using i18n (0.4.1)
Using activemodel (3.0.0)
Using erubis (2.6.6)
Using rack (1.2.1)
Using rack-mount (0.6.13)
Using rack-test (0.5.4)
Using tzinfo (0.3.23)
Using actionpack (3.0.0)
Using mime-types (1.16)
Using polyglot (0.3.1)
Using treetop (1.4.8)
Using mail (2.2.5)
Using actionmailer (3.0.0)
Using arel (1.0.1)
Using activerecord (3.0.0)
Using activeresource (3.0.0)
Using bundler (1.0.0)
Using thor (0.14.0)
Using railties (3.0.0)
Using rails (3.0.0)
Installing sqlite3-ruby (1.3.1)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem
is installed.

あらためて。ついでにmigrateもしておく

D:\public_html\opt>rails destroy scaffold banner campaign_id:integer image:varc
ar
      invoke  active_record
      remove    db/migrate/20100915122812_create_banners.rb
      remove    app/models/banner.rb
      invoke    test_unit
      remove      test/unit/banner_test.rb
      remove      test/fixtures/banners.yml
       route  resources :banners
      invoke  scaffold_controller
      remove    app/controllers/banners_controller.rb
      invoke    erb
      remove      app/views/banners
      remove      app/views/banners/index.html.erb
      remove      app/views/banners/edit.html.erb
      remove      app/views/banners/show.html.erb
      remove      app/views/banners/new.html.erb
      remove      app/views/banners/_form.html.erb
      invoke    test_unit
      remove      test/functional/banners_controller_test.rb
      invoke    helper
      remove      app/helpers/banners_helper.rb
      invoke      test_unit
      remove        test/unit/helpers/banners_helper_test.rb
      invoke  stylesheets

D:\public_html\opt>rails g scaffold banner campaign_id:integer image:string
      invoke  active_record
      create    db/migrate/20100915123509_create_banners.rb
      create    app/models/banner.rb
      invoke    test_unit
      create      test/unit/banner_test.rb
      create      test/fixtures/banners.yml
       route  resources :banners
      invoke  scaffold_controller
      create    app/controllers/banners_controller.rb
      invoke    erb
      create      app/views/banners
      create      app/views/banners/index.html.erb
      create      app/views/banners/edit.html.erb
      create      app/views/banners/show.html.erb
      create      app/views/banners/new.html.erb
      create      app/views/banners/_form.html.erb
      invoke    test_unit
      create      test/functional/banners_controller_test.rb
      invoke    helper
      create      app/helpers/banners_helper.rb
      invoke      test_unit
      create        test/unit/helpers/banners_helper_test.rb
      invoke  stylesheets
   identical    public/stylesheets/scaffold.css

D:\public_html\opt>rake db:migrate
(in D:/public_html/opt)
==  CreateBanners: migrating ==================================================
-- create_table(:banners)
   -> 0.0000s
==  CreateBanners: migrated (0.0000s) =========================================

サーバを再起動して確認

できた。