小编JTM*_*JTM的帖子

如何在登录后检查用户是否会被重定向到他/她的个人资料(Rails Tutorial Ch.9)?

我正在研究Rails教程的第9章练习1.我不确定如何测试,在正常登录后,用户将被重定向到他/她的个人资料.练习的提示意味着我应该在users_edit_test.rb中修改"使用友好转发的成功编辑"测试,以便将session [:forwarding_url]的值与用户配置文件路径的值进行比较.为此,我补充道

assert_equal session[:forwarding_url], user_path
Run Code Online (Sandbox Code Playgroud)

到功能结束.但是,当我进行rake测试时,我收到此错误:

Expected: nil
Actual: "/users/762146111"
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我解决这个问题吗?

更新:以下是正在测试的控制器和帮助程序:

class SessionsController < ApplicationController
  def new
  end

  def create
    user = User.find_by(email: params[:session][:email].downcase)
    if user && user.authenticate(params[:session][:password])
      log_in user
      params[:session][:remember_me] == '1' ? remember(user) : forget(user)
      redirect_back_or user
    else
      flash.now[:danger] = 'Invalid email/password combination'
      render 'new'
    end
  end

  def destroy
    log_out if logged_in?
    redirect_to root_url
  end
end

module SessionsHelper
  # Logs in the given user.
  def log_in(user)
    session[:user_id] = user.id
  end

  # Remembers …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails railstutorial.org

2
推荐指数
1
解决办法
1272
查看次数

为什么我不能从 GraphRequest 中获取用户的名字?

我希望用户能够使用 Facebook 注册我的 Android 应用程序SDK。为了获取他们的信息,我正在GraphRequest使用“ email”和“ public_profile”权限执行 a 。根据此页面,用户的名字和姓氏应该可以在“ first_name”和“ last_name”字段中访问。但是,当我单击该按钮时,我收到一条错误消息,指出 first_name 没有值。JSON返回的数组如下:

{"name":"First M. Last","id":"1234567890123456"}
Run Code Online (Sandbox Code Playgroud)

我还没有提交我的应用程序以供审核,因为它尚未完成。这可能与这个问题有关吗?

android facebook-graph-api facebook-login

1
推荐指数
1
解决办法
2741
查看次数

防止递归函数导致"越界"错误

我一直致力于一个用输入文本计算元音的程序.每次发现元音时,它都会使用此方法递归添加元音计数.但是,每次lastPos达到负数时,我都会出现一个越界错误.如果lastPos达到-1,我怎么能停止这个?

static int R_countVowels(String s, int lastPos) 
{           
    switch (s.charAt(lastPos))
    {  case 'a': case 'A':
       case 'e': case 'E':
       case 'i': case 'I':
       case 'o': case 'O':
       case 'u': case 'U': return (1 + R_countVowels(s, --lastPos));
       default: return R_countVowels(s, --lastPos);
    }
}
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
229
查看次数