2013-12-08 228 views
0

我向您展示您将看到的最长的日志。我正在通过Hartl的教程工作,一切都很好,直到我尝试将应用推向heroku。我得到的错误“应用程序错误 应用程序中发生错误,您的网页无法送达,请稍后重试。 如果你的应用程序拥有者,请检查您的日志信息。部署到Heroku应用程序错误

不知道我哪里去错了。我一直在试图找出这3个小时的更好的一部分。任何帮助表示赞赏。

2013-12-08T10:22:44.588867+00:00 app[web.1]: => Booting WEBrick 
2013-12-08T10:22:44.588867+00:00 app[web.1]: => Rails 4.0.1 application starting 
in production on http://0.0.0.0:46179 
2013-12-08T10:22:44.588867+00:00 app[web.1]: => Run `rails server -h` for more s 
tartup options 
2013-12-08T10:22:44.588867+00:00 app[web.1]: => Ctrl-C to shutdown server 
2013-12-08T10:22:44.588867+00:00 app[web.1]: Exiting 
2013-12-08T10:22:44.589578+00:00 app[web.1]: /app/vendor/bundle/ruby/2.0.0/gems/ 
activemodel-4.0.1/lib/active_model/deprecated_mass_assignment_security.rb:14:in 
`attr_accessible': `attr_accessible` is extracted out of Rails into a gem. Pleas 
e use new recommended protection model for params(strong_parameters) or add `pro 
tected_attributes` to your Gemfile to use old one. (RuntimeError) 

编辑:这是当我拿出attr_accesible会发生什么。我可以在没有它的情况下在heroku上获得它,但是我得到这些rspec错误。任何想法?

' c:\Sites\sample_app>bundle exec rspec spec/ 
including Capybara::DSL in the global scope is not recommended! 
.F.............F......FF..FFF.. 

Failures: 

    1) User pages signup with valid information should create a user 
    Failure/Error: expect { click_button submit }.to change(User, :count).by(1) 

     count should have been changed by 1, but was changed by 0 
    # ./spec/requests/user_pages_spec.rb:46:in `block (4 levels) in <top (requi 
red)>' 

    2) User 
    Failure/Error: it { should be_valid } 
     expected #<User id: nil, name: nil, email: nil, created_at: nil, updated_ 
at: nil, password_digest: nil, password: nil> to be valid, but got errors: Passw 
ord can't be blank, Password is too short (minimum is 6 characters), Name can't 
be blank, Email can't be blank, Email is invalid, Password confirmation can't be 
blank 
    # ./spec/models/user_spec.rb:19:in `block (2 levels) in <top (required)>' 

    3) User when email address is already taken 
    Failure/Error: user_with_same_email.email = @user.email.upcase 
    NoMethodError: 
     undefined method `upcase' for nil:NilClass 
    # ./spec/models/user_spec.rb:79:in `block (3 levels) in <top (required)>' 

    4) User when email format is valid should be valid 
    Failure/Error: @user.should be_valid 
     expected #<User id: nil, name: nil, email: "[email protected]", created_at: ni 
l, updated_at: nil, password_digest: nil, password: nil> to be valid, but got er 
rors: Password can't be blank, Password is too short (minimum is 6 characters), 
Name can't be blank, Password confirmation can't be blank 
    # ./spec/models/user_spec.rb:71:in `block (4 levels) in <top (required)>' 
    # ./spec/models/user_spec.rb:69:in `each' 
    # ./spec/models/user_spec.rb:69:in `block (3 levels) in <top (required)>' 

    5) User return value of authenticate method with valid password 
    Failure/Error: it { should == found_user.authenticate(@user.password) } 
    NoMethodError: 
     undefined method `authenticate' for nil:NilClass 
    # ./spec/models/user_spec.rb:43:in `block (4 levels) in <top (required)>' 

    6) User return value of authenticate method with invalid password 
    Failure/Error: let(:user_for_invalid_password) { found_user.authenticate("i 
nvalid") } 
    NoMethodError: 
     undefined method `authenticate' for nil:NilClass 
    # ./spec/models/user_spec.rb:47:in `block (4 levels) in <top (required)>' 
    # ./spec/models/user_spec.rb:49:in `block (4 levels) in <top (required)>' 

    7) User return value of authenticate method with invalid password 
    Failure/Error: let(:user_for_invalid_password) { found_user.authenticate("i 
nvalid") } 
    NoMethodError: 
     undefined method `authenticate' for nil:NilClass 
    # ./spec/models/user_spec.rb:47:in `block (4 levels) in <top (required)>' 
    # ./spec/models/user_spec.rb:50:in `block (4 levels) in <top (required)>' 

Finished in 0.37081 seconds 
31 examples, 7 failures 

Failed examples: 

rspec ./spec/requests/user_pages_spec.rb:45 # User pages signup with valid infor 
mation should create a user 
rspec ./spec/models/user_spec.rb:19 # User 
rspec ./spec/models/user_spec.rb:83 # User when email address is already taken 
rspec ./spec/models/user_spec.rb:67 # User when email format is valid should be 
valid 
rspec ./spec/models/user_spec.rb:43 # User return value of authenticate method w 
ith valid password 
rspec ./spec/models/user_spec.rb:49 # User return value of authenticate method w 
ith invalid password 
rspec ./spec/models/user_spec.rb:50 # User return value of authenticate method w 
ith invalid password' 

回答

0

在您跟踪误差

`attr_accessible` is extracted out of Rails into a gem. Please 
use new recommended protection model for params(strong_parameters) 
or add `protected_attributes` to your Gemfile to use old one. 

不Rails中使用attr_accessible现在4

+0

,attr_accesible取出来让我来推出的Heroku,但现在我得到了我的RSpec tests.Check出来的错误在我原来的职位。 – colorcutclarity

+0

我没有看到你的“规格” –

+0

它与你的问题无关 –

相关问题