2015-09-04 84 views
0

我具有类似于下面的代码,比Rails控制器有支架的控制器行为没有太大的不同:为什么Rails在指定格式时显示ActionController :: UnknownFormat?

应用/模型/ user.rb

class User < ActiveRecord::Base 
    validates :first_name, :last_name, presence: true 
end 

应用程序/控制器/ users_controller.rb

def create 
    @user = User.new(first_name: params[:first_name]) # oops, I forgot the last_name! 

    respond_to do |format| 
    if @user.save 
     format.html { redirect_to user_path(@user) } 
    end 
    # do nothing if [email protected] 
    end 
end 

回答

0

对于Rails的newb,这可能是一个难以解决的问题。如果respond_to区块中有多个条件路径,则应确保已考虑所有结果。如果您没有提供else分支作为后备,则可以在不遇到format.*块的情况下对respond_to块进行评估,Rails将其解释为“未指定格式”。

示例代码是我遇到的实际代码的简化版本,并且正在努力识别错误消息的原因。据我所知,我提供了格式html,但是当我认为我的format.html块在条件内达到时我错了。

我试图用Pry调试这段代码,结果发现自己正在浏览Rails源代码,无法确定为什么我看到错误。

相关问题