Welcome aboard
You’re riding Ruby on Rails!
Getting started
Here’s how to get rolling:
Install the gems
$ sudo gem install google-appengine
Assign an app identifier
Simply create an application at appspot.com,
we'll refer to that as my-app in this document.Generate your rails app
$ rails my-app; cd my-app;
Generate a rackup file
In the same folder, save this as config.ru.
require 'appengine-rack' AppEngine::Rack.configure_app( :application => 'my-app', :version => 1 ) %w{R db/ doc/ log/ script/ test/ tmp/}.each do |x| AppEngine::Rack.app.resource_files.exclude "/#{x}**" end ENV['RAILS_ENV'] = AppEngine::Rack.environment require 'config/environment' run ActionController::Dispatcher.newCheck gem sources for datamapper
$ gem sources
Only when missing, add it like this...
$ sudo gem source -a http://gems.datamapper.orgInstall gems into your app
$ appcfg.rb gem install rails \ dm-appengine rails_datamapper
Generate a model
$ ./script/generate dm_model book \ title:string summary:text image_url:string \ available:boolean pages:integer \ -f --skip-timestamps --skip-migration
Modify the Rails Initializer
Add the following to your config/environment.rb.
# Set DataMapper to use dm-appengine adapter require 'dm-core' DataMapper.setup(:default, "appengine://auto") # Set Logger from appengine-apis, all environments require 'appengine-apis/logger' config.logger = AppEngine::Logger.new # Skip frameworks you're not going to use. config.frameworks -= [ :active_record ]
Run your app locally
$ dev_appserver.rb .
Open up the console
$ appcfg.rb run -S irb > require 'config/environment'
Deploy to App Engine
$ appcfg.rb update .