我正在尝试让此链接正常工作,执行一个DELETE请求:
<%= link_to "Sign Out", destroy_user_session_path, method: :delete %>
Run Code Online (Sandbox Code Playgroud)
但是,当我单击它时,我的浏览器仍然执行请求GET(由于明显的原因而失败):
我读过多个其他论坛帖子,这可能与未包含 jquery 有关。他们提到您需要取消注释中的一行app/javascript/application.js,但是我的行非常空:
// Configure your import map in config/importmap.rb. Read more: https://github.com/rails/importmap-rails
import "@hotwired/turbo-rails"
import "controllers"
Run Code Online (Sandbox Code Playgroud)
这些论坛帖子也很旧了,所以我怀疑在此期间发生了一些变化。
Hi I am using Devise for my user authentication suddenly my new user registration was not working.
this was error I am getting.
ActionController::InvalidAuthenticityToken
Rails.root: /home/example/app
Application Trace | Framework Trace | Full Trace
Request
Parameters:
{"utf8"=>"?",
"user"=>{"email"=>"example@gmail.com",
"password"=>"[FILTERED]",
"password_confirmation"=>"[FILTERED]"},
"x"=>"0",
"y"=>"0"}
Run Code Online (Sandbox Code Playgroud)
this is my registrations controller
class RegistrationsController < Devise::RegistrationsController
prepend_before_filter :require_no_authentication, :only => [ :new, :create, :cancel ]
prepend_before_filter :authenticate_scope!, :only => [:edit, :update, :destroy]
before_filter :configure_permitted_parameters
prepend_view_path 'app/views/devise'
# GET /resource/sign_up
def new
build_resource({})
respond_with self.resource
end …Run Code Online (Sandbox Code Playgroud) 什么是让用户使用他们的电子邮件地址或用户名登录的最佳方式?我正在使用warden + devise进行身份验证.我认为这可能不会太难,但我想我需要一些建议,在哪里放置所需的所有东西.也许设计已经提供了这个功能?就像在config/initializers/devise.rb中一样,你会写:
config.authentication_keys = [ :email, :username ]
Run Code Online (Sandbox Code Playgroud)
要求用户名和电子邮件都可以登录.但我真的希望只有一个字段用于用户名和电子邮件,并且只需要其中一个.我只是想象一下使用某些ASCII艺术,它应该在视图中看起来像这样:
Username or Email:
[____________________]
Password:
[____________________]
[Sign In]
Run Code Online (Sandbox Code Playgroud) 我整合了与facebook的设计.现在,当用户使用他/她的Facebook帐户登录后创建用户帐户时,
user = User.create(:email => data["email"],
:password => Devise.friendly_token[0,20])
user.confirmed_at = DateTime.now
user.save!
Run Code Online (Sandbox Code Playgroud)
即使该帐户已被确认,仍会触发确认电子邮件.知道我怎么能把电子邮件关掉?
我最近在rails应用程序上安装了Devise,我想知道是否有可能在其中一个模型或控制器中获取当前登录用户的实例,如果是这样,我该怎么做?
我刚刚在我的应用程序中安装了Devise,配置了视图和所有内容.但是,当我单击注册按钮时,我收到此错误:
NameError in Devise::RegistrationsController#create
undefined local variable or method `unconfirmed_email' for #<User:0x00000103721b28>
Run Code Online (Sandbox Code Playgroud)
为什么是这样?此外,我正在使用tlsmail通过我的Gmail帐户发送电子邮件.这也可能是一个问题.
我发现的所有问题都与帮助者成功登录有关
after_sign_in_path_for(resource)
我在网站的索引中有一个登录表单,当登录失败时,它会重定向到"users/sign_in"
但是,当登录失败时,如何重定向到我的"site #index"?
我正在使用rails 4.0分支的设计以及ruby 2.0.0p0和Rails 4.0.0.beta1.
这是一个问题,我在检查我是否以正确的方式进行,或者我还有其他事情要做.我确信很多人转向Rails 4.0都面临着同样的问题(谷歌搜索类似的东西后).
我已阅读以下链接:
现在使用devise我创建了一个User模型,我使用上面的gists创建了以下控制器(并确保将它包含在我的routes文件中).我的额外参数是first_name和last_name.
class Users::RegistrationsController < Devise::RegistrationsController
def sign_up_params
params.require(:user).permit(:first_name, :last_name, :email, :password, :password_confirmation)
end
def account_update_params
params.require(:user).permit(:first_name, :last_name, :email, :password, :password_confirmation, :current_password)
end
private :sign_up_params
private :account_update_params
end
Run Code Online (Sandbox Code Playgroud)
还有什么我应该做的吗?这是从现在开始做事的最佳方式(因为放弃了attr_accessor).我的表单似乎工作正常(新的和更新).gists说使用"resource_params"但是在我的服务器日志中总是给出"Unpermitted parameters"错误.
能主动联系使用我的当前设计的用户模型?它已经有一个名为的列admin,如果是的话true,我想绕过Active管理员登录/admin.
这可能吗?
目前的路线:
#Active admin
ActiveAdmin.routes(self)
#Devise
devise_for :admin_users, ActiveAdmin::Devise.config
devise_for :users, :path => "account"
Run Code Online (Sandbox Code Playgroud)
其余的基本上是标准的Devise + Active管理员