Deviseの背後にあるチームは、ブログ投稿で発表しました http://blog.plataformatec.com.br/2013/05/devise-and-Rails-4/ は、Rails 4、「3.0 rc」と呼びます。同じブログ投稿でも、Devise 2.2.4.
をリリースすると言っています
Rails 4アプリを作成しようとしています。 gem install Devise
を実行すると、2。[2.4]がインストールされました。Rails 4と互換性のあるバージョンではありません。
Fetching: devise-2.2.4.gem (100%)
強力なパラメーターに関するブログ投稿のコメントから推測すると、Rails 4との互換性はありません。
Deviseのgithubページを見ましたが、Rails 4.と互換性のあるバージョンをインストールする方法がわかりません。
https://github.com/plataformatec/devise
注、私は試した
gem install devise --version 3.0.0.rc1
しかし、それは言った
ERROR: Could not find a valid gem 'devise' (= 3.0.0.rc1) in any repository
ERROR: Possible alternatives: devise
Deviseは、この回答の時点で、すぐに使用できるRails 4と互換性があります。
最終目標は、ユーザーがWebサイトに登録、ログイン、ログアウトできるようにすることです。また、ログインしているかログアウトしているかを知らせる小さな部分ビューを作成します。
Gemfile
を開いて、Devise gemをインストールします。
gem 'devise'
次に、ターミナルでbundle install
コマンドを実行してgemをインストールします。
$ bundle install
端末から次のコマンドを実行します。
Rails generate devise:install
このジェネレーターは、Deviseの使用可能なすべての設定を構成する初期化子をインストールします。
次に、ユーザーモデルを生成する必要があります。名前はUser
にしますが、好きな名前を付けることができます。User
をWhatever
に置き換えてください。
Rails generate devise User
rake db:migrate
config/environments/development.rb
内で、アクションメーラーのデフォルトURLをlocalhostに設定します。
config.action_mailer.default_url_options = { :Host => 'localhost:3000' }
routes.rb
にデフォルトのルートルートがあることを確認する必要があります。ルートルートがない場合は設定してください。
root to: 'home#index'
views/layouts
フォルダー内に_user_widget.html.erb
という名前のファイルを作成し、次のコードをコピーします。
<% if user_signed_in? %>
<p>Welcome <%= current_user.email %></p>
<%= link_to 'Logged In [click to logout]', destroy_user_session_path, :method => :delete %>
<% else %>
<p>You are not signed in.</p>
<%= link_to 'Login', new_user_session_path %>
<% end %>
レイアウト内で呼び出します(views/layouts/application.html.erb
):
<!DOCTYPE html>
<html>
<head>
<title>FacebookAuthTest</title>
<%= stylesheet_link_tag "application", media: "all" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
</head>
<body>
<p class="notice"><%= notice %></p>
<p class="alert"><%= alert %></p>
<%= yield %>
<%= render 'layouts/user_widget' %>
</body>
</html>
必ずサーバーを停止して再起動してください。そうしないと、あらゆる種類の厄介なバグが見つかります! gemfileを更新するか、環境設定ファイルを変更する場合は、常にローカルサーバーを再起動することをお勧めします。
これらすべての準備ができたら、あなた自身のRailsウェブサイトからサインアップ、ログイン、ログアウトできるようになります。
ご不明な点がございましたら、下にコメントを残してください。私がお手伝いします。
2013年9月17日更新:masterブランチは、Rails 4。 。
github repo を見ると、バージョン3.0.0.rc
(1なし)。だからあなたが欲しい
gem install devise --version "3.0.0.rc"
または、gemfileで:
gem 'devise', '3.0.0.rc'
これはそれをインストールしました
gem install devise --pre
または
devise-3.0.0.rc.gem
この時点で、gemのこのバージョンは、使用したいものです。
gem 'devise', '3.0.0'
3.0バージョンが安定したので、次のことができます。
gem install devise
またはGemfileで:
gem 'devise'
gem 'devise'、github: 'plataformatec/devise'、ブランチ: 'Rails4'