Ruby on rails 4 Rails-ActionController::保存时的未知信息,未使用Desive登录

Ruby on rails 4 Rails-ActionController::保存时的未知信息,未使用Desive登录,ruby-on-rails-4,devise,Ruby On Rails 4,Devise,我的项目背后的想法是让用户能够登录并管理成员模型中包含成员容器的等待列表。除了向等待名单中添加新成员外,所有操作都需要用户登录 在我的会员控制器顶部,我有以下内容: skip_before_filter :authenticate_user!, :only => [:new, :create] 要允许任何人创建memebers,但在未登录时创建成员时,我会出现以下错误: ActionController::未知信息格式 在成员控制器的下一行中 respond_to do |format|

我的项目背后的想法是让用户能够登录并管理成员模型中包含成员容器的等待列表。除了向等待名单中添加新成员外,所有操作都需要用户登录

在我的会员控制器顶部,我有以下内容:

skip_before_filter :authenticate_user!, :only => [:new, :create]
要允许任何人创建memebers,但在未登录时创建成员时,我会出现以下错误:

ActionController::未知信息格式

在成员控制器的下一行中

respond_to do |format|
我的创建操作如下所示:

def create
@member = Member.new(member_params)
if !user_signed_in?
  @member.date_added = Time.now
  @member.status = 1
  respond_to do |format|
    if @member.save
      redirect_to(:back)
    else
      format.html { render action: 'new' }
      format.json { render json: @member.errors, status: :unprocessable_entity }
    end
  end
else
  respond_to do |format|
    if @member.save
      format.html { redirect_to @member, notice: 'Member was successfully created.' }
      format.json { render action: 'show', status: :created, location: @member }
    else
      format.html { render action: 'new' }
      format.json { render json: @member.errors, status: :unprocessable_entity }
    end
  end
end
end

登录时一切正常,但只有在未登录时才会抛出此错误。非常感谢任何帮助

我认为问题在于请求为JSON时重定向到(:back)

尝试将其替换为:

#redirect_to(:back)
format.html { redirect_to(:back) }
format.json { render ..............., status: :created }

您忘记了为
重定向到(:back)
提供格式。试试这个

respond_to do |format|
    if @member.save
      format.html { redirect_to(:back) }
    else
     ................