Tag: devise

密码更改后,Devise正在注销用户

我正在使用设计,当用户更改密码时,网站会将其记录下来。 我在网上看到,添加sign_in会起到作用但不起作用,用户在密码更改时会被注销。 这是我的代码 if @user.errors[:base].empty? and @user.update_attributes(params[:user]) sign_in(current_user, :bypass => true) flash[:success] = “User account has been successfully updated” redirect_to edit_user_path(params[:site_id], @user) else render :action => :edit, :status => :unprocessable_entity end 我假设这会起作用,但无论我做什么,我仍然会退出….任何遗失或可能一个设计设置是关闭…任何帮助将不胜感激

添加字段以使用Rails设计注册4

首先,我是铁杆的新手,所以我仍然掌握着一切。 我正在尝试将两个字段添加到Devise注册页面,第一个名称字段和一个姓氏字段。 我继续前进并更改了视图和控制器以尝试此操作。 它们看起来像这样: 控制器: class ApplicationController < ActionController::Base # Prevent CSRF attacks by raising an exception. # For APIs, you may want to use :null_session instead. protect_from_forgery with: :exception before_action :configure_devise_permitted_parameters, if: :devise_controller? protected def configure_devise_permitted_parameters registration_params = [:firstName, :lastName, :email, :password, :password_confirmation] if params[:action] == 'update' devise_parameter_sanitizer.for(:account_update) { |u| u.permit(registration_params << :current_password) } […]

如何在ROR中添加带有设计的管理员

我正在使用设计gem,我想创建管理员 rails g migration add_admin_to_user 在数据库中 def change add_column :users, :admin , :boolean , {default: false} end def用户 def admin? user=User.create(email: “info@presale.ca”,password: “12345678”) user.admin=true user user.save admin end end 在索引页面中 def用户有什么问题请问如何解决?

Rails设计多态 – 使用Ajax渲染部分渲染

我已经从这个答案实现了多个模型的设计注册。 这个tuts从路径获取params user_type 。 我想用select user_type更改它。 因此,当我在select_tag上选择一个值时,将获得一个param user_type。 我有一些代码看起来像: 的routes.rb namespace :cp do devise_scope :user do match ‘/add_user’ => ‘registrations#new’ match ‘/select/admin’ => ‘registrations#selectuser’, :user => { :usertype => ‘admin’ } match ‘/select/player’ => ‘registrations#selectuser’, :user => { :usertype => ‘player’ } end end registrations_controller.rb def selectuser respond_to do |format| format.js end end new.html.erb Add […]

在Rails中通过JS设计注册#update

我正在尝试使用AJAX通过Devise更新用户模型,并让Devise使用正确的javascript文件进行响应。 我想将表单远程提交到注册#update action,但这不适用于Devise的默认响应,它使用RegistrationsController中的以下内容: respond_with resource, :location => after_update_path_for(resource) 上面尝试重定向到默认路由,而不是呈现update.js.erb文件。 我可以覆盖该操作并使其与以下更改一起使用: respond_to do |format| format.html format.js end 但是,这似乎非常暴力,因为我压倒整个行动。 是否有一种简单的方法让Devise知道用javascript响应而不是默认重定向?

devise_error_messages! 导致nil的未定义方法`errors’:NilClass

我在layouts / application.html.erb上有一个表单,发布在下面,如果我添加行 我收到以下错误。 如何在没有分页符的情况下添加devise_error_messages? /app/views/layouts/application.html.erb resource_name, :url => registration_path(resource_name)) do |f| %> Add new contact First Name Last Name Email 错误: NoMethodError in My_devise/sessions#index Showing /app/views/layouts/application.html.erb where line #59 raised: undefined method `errors’ for nil:NilClass Extracted source (around line #59): 56: New Contact 57: 58: resource_name, :url => registration_path(resource_name)) do |f| %> 59: 60: […]

使用设计没有gem,我可以简单地复制文件吗?

我可以简单地将设计应用程序和lib(以及gem?)文件夹复制到我各自的项目文件夹中,让它们像我使用gem一样工作吗? 我想这样做,以便我可以真正看到所有代码,可能做一些自定义,并避免在我的IDE中出现一些“无法找到”的错误。 这是一个坏主意吗? 如果这是可行的,我只需要删除gem并复制必要的文件,或者我需要“撤消”gem所做的事情。 这会不会随着更新而产生问题? 最后, 当我没有项目中的所有代码时 , 究竟是如何设计的? 它在我离线时有效,所以代码只是存储在一些秘密的隐形文件中吗? 有些gem需要互联网连接来检索它们的function,或者只是在项目中复制和使用任何gem而不在gem文件中声明它。

Rails 3:永久公开个人资料

我有/users/1作为公共用户配置文件(显示方法),但我想要/user_name而不是/users/1 。 如果我使用设计,我可以实现吗? 谢谢 编辑:我的节目控制器: # public profile page def show @user = User.find(params[:id]) end

什么是omniauth和电子邮件密码注册最佳实践?

结合Facebook登录(让我说我会使用Omniauth gem)和电子邮件+密码登录的最佳做法是什么? 我看了几个博客,看过Railscasts,我知道每个人都在使用Omnia的Devise gem。 但我正在寻找一些不同的观点。 子问题: 我正在考虑从头开始创建电子邮件+密码注册(不使用任何gem,让它保持快速和轻便)所以你有什么建议吗? 或者,如果你有特定的gem,请让它快速。 你对Oauth2gem(替代Omniauth)处理Facebook的身份validation有什么其他建议吗? 对不起,我在这里问这个基本问题,但我没有找到很多答案(我发现其中大部分是基于Devise)

在代码的其他地方设计渲染符号=> up / in form partials

我刚开始使用Devise和Rails3。 我有认证,工作和理解基础知识。 截至目前在我的家庭控制器中代表我的家庭/首页我有两个链接,一个链接到Register => sign_up,另一个根据login / logout => sign_in / sign_out而变化。 但是,我不想将我的用户重定向到登录页面。 相反,我想在我的首页上显示我的登录表单。 所以我将devise/session/new模板int分离到视图和_form.html.erb部分。 现在,在我的主视图中,我将登录表单呈现为: Welcome: () ‘delete’ %> // Rendering the partial here 这是部分代码: resource_name, :url => session_path(resource_name)) do |f| %> true %> 我的错误如下: NameError in Home#index Showing devise/sessions/_form.html.erb where line #1 raised: undefined local variable or method `resource’ for #<#:0x6157ff8> Extracted source (around […]