gpt4 book ai didi

ruby-on-rails - 用户 Controller 中的 Errno::ECONNREFUSED#create

转载 作者:行者123 更新时间:2023-12-04 23:02:56 25 4
gpt4 key购买 nike

我的申请已经完成,所以我继续注册。输入信息后,我收到一个错误页面,内容为:

用户 Controller 中的 Errno::ECONNREFUSED#create

Connection refused - {:data=>"<?xml version=\"1.0\" encoding=\"UTF-8\"?><add><doc><field name=\"id\">User 1</field><field name=\"type\">User</field><field name=\"type\">ActiveRecord::Base</field><field name=\"class_name\">User</field><field name=\"username_text\">mikeadeleke</field><field name=\"bio_text\">Founder of Edopter</field></doc></add>", :headers=>{"Content-Type"=>"text/xml"}, :method=>:post, :params=>{:wt=>:ruby}, :query=>"wt=ruby", :path=>"update", :uri=>#<URI::HTTP:0x007fb6c3c911d0 URL:http://localhost:8982/solr/update?wt=ruby>, :open_timeout=>nil, :read_timeout=>nil, :retry_503=>nil, :retry_after_limit=>nil}

消息:
app/controllers/users_controller.rb:14:in `create'

所以这是我的代码导致阻塞。我没有看到任何问题,并通过 roodi 验证器运行它。
class UsersController < ApplicationController
before_filter :get_user, except: [:new, :create]

def get_user
@user = User.find_by_username(params[:user_name])
end

def new
@user = User.new
end

def create
@user = User.new(params[:user])
if @user.save
sign_in @user
flash[:success] = "Woohoo! Thanks for creating an account. Feel free to edit your profile or look around elsewhere!"
redirect_to(user_url(@user.username))
else
render 'new'
end
end

def show
@resources_upvoted = []
@user.upvotes.where(upvotable_type: "Resource").each do |upvote|
@resources_upvoted << upvote.upvotable
end
@crafts_interested = []
@resources_upvoted.each do |resource|
craft = resource.craft
if !@crafts_interested.include?(craft)
@crafts_interested << craft
end
end
end

def edit
if @user != current_user
redirect_to user_url(@user.username)
end
end

def update
@user.email = params[:email]
@user.bio = params[:bio]
@user.save

redirect_to edit_user_url(params[:user_name])
end

def destroy
@user.destroy

redirect_to home_url
end
end

最佳答案

您的数据库连接很好,事实上,您的错误消息中有答案;)

如果您查看它,您会发现该代码:

URL:http://localhost:8982/solr/update?wt=ruby>

这意味着您需要启动 solr 服务器。您可以从简单的 RAILS_ENV=your_env rake sunspot:solr:run 开始.考虑添加一些 begin... rescue围堵 @user.save用于输出一些消息而不是让整个应用程序崩溃。

如果您对为什么在没有显式调用 solr 的情况下收到该错误感兴趣 - solr 将回调添加到 save方法,所以它索引每个新的(或更新的)记录,这意味着在添加新数据后你不会(理论上)从头开始重新索引。

关于ruby-on-rails - 用户 Controller 中的 Errno::ECONNREFUSED#create,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18599631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com