gpt4 book ai didi

ruby-on-rails - 用Rails设计4

转载 作者:行者123 更新时间:2023-12-03 08:59:11 24 4
gpt4 key购买 nike

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兼容。

我们的最终目标是使用户能够注册,登录和注销网站。我们还将创建一个小的局部 View ,告知我们是否已登录或注销。

安装Devise gem。

打开Gemfile并安装Devise gem。

gem 'devise'

然后在您的终端中运行 bundle install命令以安装gem。
$ bundle install

运行一些Devise生成器以设置初始配置。

从终端运行以下命令:
rails generate devise:install

该生成器将安装用于配置Devise所有可用设置的初始化程序。

生成用户模型。

接下来,我们需要生成我们的用户模型。我将其命名为 User,但您可以随意命名,只需将 User替换为 Whatever即可。
rails generate devise User
rake db:migrate

为Development.rb配置默认URL选项

config/environments/development.rb内部,将Action Mailer的默认URL设置为localhost:
config.action_mailer.default_url_options = { :host => 'localhost:3000' }

确保您在Routes.rb中声明了根路由

您需要确保 routes.rb具有默认的根路由-如果您没有,请进行设置!
root to: 'home#index'

创建局部 View 以查看是否已登录。

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>

Make sure you stop and restart the server otherwise you will find all sorts of nasty bugs! It's always best to restart your local server when you update your gemfile or change anything in the environment configuration file.



完成所有这些操作后,您应该可以从自己的Rails网站上注册,登录和注销。

如果您有任何疑问,请在下面留下评论,我将尽力提供帮助。

关于ruby-on-rails - 用Rails设计4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16513066/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com