2012-07-09 9 views
0

cancan (http://railscasts.com/episodes/192-authorization-with-cancan?autoplay=true) 용 레일 캐스트 에피소드 192을 팔로우하고 있습니다.cancan을 사용할 수 없습니다.

내가 가진 루비 1.9.3 및 3.2.3

내 보석 파일이 내용이 레일

group :test, :development do 
    gem 'rspec-rails', '~> 2.5' 
end 
group :test do 
    gem 'cucumber-rails', '1.0.6'# use this instead of the one in the book 
    gem 'capybara' 
    gem 'database_cleaner' 
end 

gem 'dynamic_form' 
gem 'factory_girl' 
gem 'devise', '~>1.4.3' 
gem 'email_spec' 
gem 'cancan' 

와 environment.rb에 파일에 내가 추가 한

config.gem 'cancan' 

번들 명령을 실행할 때 나는 이것을 본다 ...

Using warden (1.0.6) 
Using devise (1.4.9) 
Using dynamic_form (1.1.4) 
Using rspec-core (2.11.0) 
Using rspec-expectations (2.11.1) 
Using rspec-mocks (2.11.0) 
Using rspec (2.11.0) 
,363,210

지금 내 질문은 : 나는 실행하면

Could not find warden-1.0.6 in any of the sources 
Run `bundle install` to install missing gems. 

또한 내 gem.lock 파일에 왜 보여 않습니다 ...

:

sudo rake gems:install 

을 나는이 볼 않는 이유

devise (1.4.9) 
    bcrypt-ruby (~> 3.0) 
    orm_adapter (~> 0.0.3) 
    warden (~> 1.0.3) 
+1

루비는 어떻게 설치 되나요? 번들 설치를 실행 한 후, sudo rake gems : install을하고있는 이유는 무엇입니까? – Remear

+0

나는 rvm을 사용하여 루비를 설치했다. sudo rake gems를하고 있습니다 : 에피소드에 있기 때문에 설치하십시오. 하지만 그렇게하면 번들 설치를 먼저 실행해야한다는 것을 알 수 있습니다. 왜냐하면 보석 소장 1.0.6이 없어져서 cancan이 필요하기 때문입니다. –

답변

0

레일스 캐스트는 2009 년 12 월 14 일부터 레일 2가 표준이 된 시점입니다.

https://github.com/ryanb/cancan의 지침을 따라 가야하는데 레일 3과 번들러에 더 중점을 둡니다.

bundle install 당신의 현재 RVM gemset에 Gemfile 내용을 설치합니다.이 경우 아마도 기본 gemset입니다. sudo를 사용하여 보석을 설치하지 마십시오. 보석 세트에 설치된 보석을 나열하려면 gem list을 실행하십시오. bundle list을 실행하면 현재 응용 프로그램 번들에있는 모든 보석을 표시합니다.

+0

정말 고맙습니다. –

관련 문제