我正在使用js2-mode来编辑Emacs中的Javascript,但我似乎无法让它停止使用制表符而不是空格来缩进.我的其他模式工作正常,只有问题w/js2.
我已经看到这个问题出现在许多不同的情况下,并希望获得在StackOverflow上修复/调试它的最佳实践.
为了使用现实世界的例子,我今天早上发现了这个例子:
expected announcement.rb to define Announcement
Run Code Online (Sandbox Code Playgroud)
该类在开发,测试和生产控制台方面表现良好,但在生产的Mongrel中失败了.这是班级:
class Announcement < ActiveRecord::Base
has_attachment :content_type => 'audio/mp3', :storage => :s3
end
Run Code Online (Sandbox Code Playgroud)
我想在答案中解决的问题并不是解决这个特定的问题,而是如何正确调试以使Rails给你一个有意义的错误,如预期的那样x.rb定义X.rb'通常是一个红色的鲱鱼.. .
编辑(到目前为止有3个很棒的回复,每个都有部分解决方案)
调试:
来自Joe Van Dyk:尝试通过导致错误的环境/实例上的控制台访问模型(在上面的情况下:脚本/控制台生产然后键入'Announcement'.
来自Otto:尝试通过初始化程序设置最小插件集,例如:config.plugins = [:exception_notification,:ssl_requirement,:all]然后一次重新启用一个.
具体原因:
来自Ian Terrell:如果您使用attachment_fu,请确保安装了正确的图像处理器.即使您没有附加图像,attachment_fu也会要求它.
来自Otto:确保您没有命名与内置Rails类冲突的模型,例如:Request.
来自Josh Lewis:确保您的应用程序(或Gem列表)中某处没有重复的类或模块名称.
给定一个控制器方法,如:
def show
@model = Model.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => model }
end
end
Run Code Online (Sandbox Code Playgroud)
编写集成测试以断言返回具有预期XML的最佳方法是什么?