2010-06-07 10 views
1

Je suis en train de faire ma première application Sinatra sur le sol, mais je obtenir une page d'erreur de passagers:Où est-ce que je me trompe? « Méthode non définie « application » pour Sinatra: Module » Sinatra/passager/Apache

undefined method `application' for Sinatra:Module 

Voici mon fichier Rackup:

require 'rubygems' 
require 'sinatra' 
set :env, :production 
disable :run 
require 'app' 
run Sinatra.application 

Et l'application elle-même:

#!/usr/bin/env ruby 

require 'rubygems' 
require 'sinatra' 
require 'haml' 

get '/' do 
    haml :index 
end 

get '/hello/:name' do |name| 
    @name = name 
    haml :hello 
end 

get '/goodbye/:name' do |name| 
    haml :goodbye, :locals => {:name => name} 
end 

__END__ 

@@layout 
%html 
    %head 
    %title hello.dev 
    %body 
    =yield 

@@index 
#header 
    %h1 hello.dev 
#content 
    %p 
    This is a test... 

@@hello 
%h1= "Hello #{@name}!" 

@@goodbye 
%h1= "Goodbye #{name}!" 

Où vais-je tort?

Répondre

5

est ici le mien config.ru

require 'application' 

set :run, false 
set :environment, :production 

FileUtils.mkdir_p 'log' unless File.exists?('log') 
log = File.new("log/sinatra.log", "a") 
$stdout.reopen(log) 
$stderr.reopen(log) 

run Sinatra::Application 

aussi, mon code app vit dans application.rb

+0

qui a obtenu - merci! – safetycopy