Skip to content

Instantly share code, notes, and snippets.

@shawndrost
Forked from dgb/application.rb
Created January 17, 2012 23:48
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 5 You must be signed in to fork a gist
  • Save shawndrost/1629835 to your computer and use it in GitHub Desktop.
Save shawndrost/1629835 to your computer and use it in GitHub Desktop.
Single file Rails application
# the new and improved one-file rails app -- now including
require "action_controller/railtie"
class Tester < Rails::Application
config.session_store :cookie_store, :key => '_rails_session'
config.secret_token = '095f674153982a9ce59914b561f4522a'
end
class UsersController < ActionController::Base
def current
render text: current_user.server_id
end
def create
@u = User.create(params[:user])
@u.create_remotely!
session[:user_id] = @u.id
render text: "good!"
end
end
require 'sqlite3'
db_file = File.join(File.dirname(__FILE__), 'test.sqlite3')
db = SQLite3::Database.new( db_file )
db.execute( "drop table users;" ) rescue nil # maybe it didn't exist!
db.execute( "create table users (id integer primary key autoincrement, email varchar(100), server_id integer);" )
require 'active_record'
ActiveRecord::Base.establish_connection(:adapter => 'sqlite3', :database => db_file)
class User < ActiveRecord::Base
include Whoami::Rails::ActiveRecord
end
Tester.routes.draw do
root to: 'users#current'
match '/users/current' => 'users#current'
resources :users
end
require './application'
run Tester
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment