我一直在尝试使用' github_api'宝石以获取信息。当我测试终端中的所有内容时,一切正常,我能够将信息保存到我的用户并重新发布我创建的数据库。但是,我将所有信息都放在我的控制器中,现在我不断收到语法错误,意外的tLABEL,期待' ='错误。下面是我的用户控制器的代码和错误的图片。请帮忙!
class UsersController < ApplicationController
def index
@users = User.all
end
def create
@user = User.new
(
id: Github.search.users(params[:name]).items[0].id,
username: Github.search.users(params[:name]).items[0].login,
html_url: Github.search.users(params[:name]).items[0].html_url,
avatar_url: Github.search.users(params[:name]).items[0].avatar_url
)
end
if @user.save
Github.repos.list user: params[:name] do |repos|
Repo.create
(
user_id: repos.owner.id,
name: repos.name,
address: repos.full_name
)
end
redirect_to users_path
else
render users_path
end
end
def show
@user = User.find(id: params[:id])
end
端
答案 0 :(得分:1)
在同一行创建新用户写括号时,不需要end
:
@user = User.new(
id: Github.search.users(params[:name]).items[0].id,
username: Github.search.users(params[:name]).items[0].login,
html_url: Github.search.users(params[:name]).items[0].html_url,
avatar_url: Github.search.users(params[:name]).items[0].avatar_url
)
如果你不知道在哪里可以避免使用括号,最好使用括号:
if @user.save
Github.repos.list(user: params[:name]) do |repos|
Repo.create(
user_id: repos.owner.id,
name: repos.name,
address: repos.full_name
)
end
redirect_to users_path
else
render users_path
end