バナー配信システムを作る(1)
詳しくはあとでまとめる。続くかどうかはわからない
ユースケース
- ユーザ登録ができる
- キャンペーンが登録できる
- キャンペーンにバナーが登録できる
- バナー貼り付け用のコードが取得できる
- バナーのインプレッション数、クリック数が取得できる
とりあえずはじめる
それがRails流
プロジェクトの作成
D:\public_html>rails new opt create create README create Rakefile create config.ru create .gitignore create Gemfile create app create app/controllers/application_controller.rb create app/helpers/application_helper.rb create app/views/layouts/application.html.erb create app/mailers create app/models create config create config/routes.rb create config/application.rb create config/environment.rb create config/environments create config/environments/development.rb create config/environments/production.rb create config/environments/test.rb create config/initializers create config/initializers/backtrace_silencers.rb create config/initializers/inflections.rb create config/initializers/mime_types.rb create config/initializers/secret_token.rb create config/initializers/session_store.rb create config/locales create config/locales/en.yml create config/boot.rb create config/database.yml create db create db/seeds.rb create doc create doc/README_FOR_APP create lib create lib/tasks create lib/tasks/.gitkeep create log create log/server.log create log/production.log create log/development.log create log/test.log create public create public/404.html create public/422.html create public/500.html create public/favicon.ico create public/index.html create public/robots.txt create public/images create public/images/rails.png create public/stylesheets create public/stylesheets/.gitkeep create public/javascripts create public/javascripts/application.js create public/javascripts/controls.js create public/javascripts/dragdrop.js create public/javascripts/effects.js create public/javascripts/prototype.js create public/javascripts/rails.js create script create script/rails create test create test/performance/browsing_test.rb create test/test_helper.rb create test/fixtures create test/functional create test/integration create test/unit create tmp create tmp/sessions create tmp/sockets create tmp/cache create tmp/pids create vendor/plugins create vendor/plugins/.gitkeep
キャンペーンのCRUDを作る
本当はユーザ管理を先につくりたいけど、先に動くようにするのがアジャイル(多分違う)
D:\public_html>cd opt D:\public_html\opt>rails generate campaign name:string Could not find generator campaign. D:\public_html\opt>rails g scaffold campaign name:string invoke active_record create db/migrate/20100915002636_create_campaigns.rb create app/models/campaign.rb invoke test_unit create test/unit/campaign_test.rb create test/fixtures/campaigns.yml route resources :campaigns invoke scaffold_controller create app/controllers/campaigns_controller.rb invoke erb create app/views/campaigns create app/views/campaigns/index.html.erb create app/views/campaigns/edit.html.erb create app/views/campaigns/show.html.erb create app/views/campaigns/new.html.erb create app/views/campaigns/_form.html.erb invoke test_unit create test/functional/campaigns_controller_test.rb invoke helper create app/helpers/campaigns_helper.rb invoke test_unit create test/unit/helpers/campaigns_helper_test.rb invoke stylesheets create public/stylesheets/scaffold.css
テーブルを作成
D:\public_html\opt>rake db:migrate (in D:/public_html/opt) == CreateCampaigns: migrating ================================================ -- create_table(:campaigns) -> 0.0000s == CreateCampaigns: migrated (0.0000s) =======================================
動作を確認
D:\public_html\opt>rails server => Booting WEBrick => Rails 3.0.0 application starting in development on http://0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server