试图为Parse做一个查询会话

时间:2015-08-01 21:36:18

标签: ruby-on-rails ruby parse-platform

使用gem parse-ruby-client并尝试进行查询会话,这是我的代码。

我很好奇如何实现大部分https://parse.com/docs/rest/guide。另外我不知道我是否创建了一个会话开始?我认为宝石会自动完成吗?不太确定

class LoginController < ApplicationController
  def index

  end
  def log_in
    user = Parse::User.authenticate(params[:user][:username], params[:user][:password])
        @username = params[:user][:username]
        rescue Parse::ParseProtocolError
            redirect_to :controller => "login"
end
    def logout
                Parse.client.post("https://api.parse.com/1/logout", {})
                rescue Parse::ParseProtocolError
                redirect_to :controller => "login"
            end
    def query_session
                Parse.client.post("https://api.parse.com/1/users/", {})
    end
end

这里是log_in.html.erb

<h4>You are logged in as:  <u><%= @username %></u></h4>

<%= link_to "logout", :controller => "login", :action => 'logout' %><br>
<%= link_to "test", :controller => "login", :action => 'query_session' %>

的routes.rb

Rails.application.routes.draw do
  root 'login#index'  

  get 'login/log_in' => 'login#log_in'
  post 'login/log_in' => 'login#log_in'


  get 'login/logout' 

  get 'login/query_session' => 'login#query_session'
end

这是我的parse.rb

require 'parse-ruby-client'

Parselogin::Application.configure do 
config.parse = Parse.init :application_id => 'APIKEY',
                         :api_key        => 'APIKEY'
                       end

当我点击log_in.html.erb

中的“测试”按钮时,我收到了此错误
201: missing user password

1 个答案:

答案 0 :(得分:0)

您缺少Parse.client的初始化。这是gem的官方文档中的一个例子。

require 'parse-ruby-client'

client = Parse.create :application_id => '<your_app_id>',
                      :api_key        => '<your_api_key>',
                      :quiet          => true | false

要稍后使用客户端,请执行此类操作。 client.post("https://api.parse.com/1/logout", {}),其中client是第一个代码段的变量。 为了回答您问题的第二部分,请考虑宝石的documentation