Tag: 设计

从Backbone检索rails / devise current_user

我有一个应用程序,我用Rails通过Devise管理注册/进/出。 当我登录时,我被重定向到Backbone启动的Dashboard #index。 我想以某种方式检索Backbone中的current_user.id和current_user.token。 我唯一的想法是在我的dashboard.html.haml中有这个 :javascript window.App.current_user.id = “#{current_user.id}” window.App.current_user.token = “#{current_user.token}”

Rails设计简单的forms而不是保存所有字段

当我去生成设计视图时,我想修改新的注册页面以捕获不仅仅是电子邮件和密码。 我的设计用户模型包含first name last name address等字段。 这是我目前的表格 Sign up About yourself <%= f.input :province, required: true, collection: provinces, prompt: '’ %> 为什么我提交表单时只保存电子邮件和密码?

设计authenticate_user

帮助我解决这个问题: 我有2个模型(管理员和用户) – >用devise创建,我有post_controller: 问题出现了: 如果我有一个模型(user.rb) – >在我的控制器中我把它: before_filter :authenticate_user!, :except => [:show, :index] 但我有2个模型,我希望用户可以访问post控制器的“显示”和“索引”操作,管理员可以访问所有操作。 我这样做的事情: before_filter :logged_in . . . private def logged_in if admin_signed_in? else authenticate_user! end end 但我想改变我的字符串: authenticate_user! 这样的事情: :authenticate_user!, :except => [:show, :index] 但除了指before_filter之外 我该怎么办(没有’cancan’gem)

Rails:从ActiveResource调用设计身份validation

我的两个rails应用程序(app1,app2)正在使用活动资源进行通信。 app1调用app2在app2中创建一个用户。 app2将创建用户,并希望app1然后将用户重定向到app2的经过身份validation的页面。 从app1到app2会不断要求用户登录。 我正在寻找一种方法来避免在app2中执行此登录步骤,而是让用户在第一次活动资源调用期间登录以创建用户,并以某种方式获取写入的身份validation令牌。 使用Devise完成身份validation。 Devise中有什么内容可以支持这个吗? 传递身份validation令牌的方式是什么?

成功进行DEVISE登录后,如何将用户重定向回以前需要登录的操作?

我有一个ajax投票按钮:如果用户点击“竖起大拇指”图像,但没有登录,那么他们应该会看到一个对话框,要求他们先登录。 要执行此对话框,我使用jQuery和facebox绑定到ajax:failure事件。 如果用户未登录,Devise将引发401 Unauthorized .facebox在弹出对话框中加载远程html以进行登录,该对话框显示DEVISE登录表单。 一切正常,除非成功登录后,用户被重定向到主页。 如果用户被重定向回他们正在查看的post以便他们可以继续投票,那将更直观。 是否有实现此行为的最佳实践方法? 谢谢。

设计可邀请的批量邀请 – Ruby on rails

我正在尝试使用Devise invitable来一次添加多个用户。 基本上当有人创建一个帐户时,他们要做的第一件事就是使用可邀请的表单添加一堆用户…… 只是不确定如何复制表单中的字段并让他们发送每个条目的创建请求。 提前致谢!

设备3(导轨4)无法在没有密码的情况下更新用户

我正在尝试更新用户而不必提供密码,但是在旧版本/ rails版本上工作的方法不再适用于设计3和rails 4强参数。 我正在使用我的user_controller进行更新,但我也尝试使用自定义设备注册控制器和devise_parameter_sanitizer,但没有成功。 表单不需要密码(没有密码字段),处理更新的user_controller如下所示: # PATCH/PUT /users/1 def update if user_params[:password].blank? Rails.logger.info “entered if statement” user_params.delete :password user_params.delete :password_confirmation Rails.logger.info(user_params.inspect) end @user = current_user if @user.update(user_params) redirect_to @user, notice: ‘User was successfully updated.’ else Rails.logger.info(@user.errors.inspect) render action: ‘edit’ end end private def user_params params.require(:user).permit(:screen_name, :full_name, :email, :about, :location, :profile_pic, :password, :password_confirmation, :current_password) end ..提交后的日志如下: […]

Rails设计:我如何(mem)缓存设计用户对象的数据库请求?

每次我访问经过身份validation的页面时,我都会注意到发布了一条SQL语句: 用户负载(0.2ms)SELECT users 。* FROM users WHERE( users id = 1)LIMIT 1 (我正在使用Rails 3 btw ..所以cache_money似乎是一个解决方案,尽管有很多搜索我找不到替代品)。 我在用户模型中尝试了很多覆盖,似乎只调用了find_by_sql。 哪个传递了整个SQL语句的字符串。 像find_by_id或find这样直观的东西似乎没有被调用。 我可以’覆盖这个方法并收集用户ID并从中做一个合理的缓存系统 – 但这非常难看。 我也尝试重写authenticate_user,我可以拦截一次SQL尝试但是然后调用current_user似乎再次尝试。 简单地说,我的用户对象很少变化,并且它是一个悲伤的状态,以保持为此而不是内存缓存解决方案。 (假设我愿意承担所有责任,使用以下内容来缓冲所述缓存:after_save作为部分但不是所有解决方案)

RAILS / DEVISE – 设置一个设计cookie以在不同的子域中保持不变

我使用devise进行身份validation,并希望以下工作: 用户登录[ http://mydomain.com] 。 用户通过[ https://secure.mydomain.com]付款 用户返回[ http://mydomain.com/action]继续使用系统 我正在关注本教程: http : //clearcove.ca/blog/2010/11/how-to-secure-a-rails-app-on-heroku-with-ssl-firesheep/ 但我正处于需要让Devise做authlogic在这里做的部分。 救命!! ;)

公共用户档案? Ruby on Rails + Devise

如何制作公共用户档案? 我使用Devise并且只有/ user /。 用户只能看到他的个人资料,我想制作/ user / user_id。 user_id – 公共用户配置文件。