Ruby on rails 5 “我该怎么办?”;意外缩进“;指向do.rb文件时出错?从rails 3迁移到rails 5之后?

Ruby on rails 5 “我该怎么办?”;意外缩进“;指向do.rb文件时出错?从rails 3迁移到rails 5之后?,ruby-on-rails-5,Ruby On Rails 5,编辑:添加“.rb”示例和进一步文档 EDIT2:添加了丢失的堆栈跟踪 EDIT3:我无法复制第一个带有favicon\u link\u标签的('logo\u 16.png') 将rails从3.2迁移到5.0后,我出现了“意外缩进”错误 好的,我预计会有很多问题,但我不知道该放在哪里或解决这个问题:在堆栈指向.rb文件的地方出现缩进错误,这太可怕了 Showing c:/rbstart/app/views/layouts/cibo_lista.haml where line #31 raise

编辑:添加“.rb”示例和进一步文档

EDIT2:添加了丢失的堆栈跟踪

EDIT3:我无法复制第一个带有favicon\u link\u标签的('logo\u 16.png')

将rails从3.2迁移到5.0后,我出现了“意外缩进”错误

好的,我预计会有很多问题,但我不知道该放在哪里或解决这个问题:在堆栈指向.rb文件的地方出现缩进错误,这太可怕了

Showing c:/rbstart/app/views/layouts/cibo_lista.haml where line #31 raised:

SyntaxError: [stdin]:68:1: unexpected indentation
Extracted source (around line #645):

            @page_css.uniq!
            TechDraw::DrawLogger.add_file(:css, @page_css)
    645     r=get_page_css_manifest.uniq.map { |css| stylesheet_link_tag css  }.join("\n").html_safe <--- unexpected indentation error?
            # following is my temp. solution
            # r=get_page_css_manifest.uniq.map { |css| "<link href='/assets/#{css}' media='screen' #rel='stylesheet'/>"}.join("\n").html_safe
            clear_page_css

Rails.root: c:/rbstart

Application Trace | Framework Trace | Full Trace
app/helpers/site_tags_helper.rb:645:in `block in site_css_link_tag'

app/helpers/site_tags_helper.rb:645:in `block in site_css_link_tag'
app/helpers/site_tags_helper.rb:645:in `map'
app/helpers/site_tags_helper.rb:645:in `site_css_link_tag'
app/views/layouts/cibo_lista.haml:31:in `_app_views_layouts_cibo_lista_haml___421072769_123879800'
config/application.rb:171:in `call'
config/application.rb:171:in `block in <class:TemplateRenderer>'
app/controllers/ldc/cibo_lista_controller.rb:373:in `render'
lib/site_base/site_exceptions.rb:37:in `render_all_errors'
lib/sweet_check.rb:33:in `call!'
lib/sweet_check.rb:19:in `call'
显示c:/rbstart/app/views/layouts/cibo#u lista.haml,其中第31行出现:
语法错误:[stdin]:68:1:意外缩进
提取的源(第645行附近):
@page_css.uniq!
TechDraw::DrawLogger.add_文件(:css,@page_css)
645 r=get_page_css_manifest.uniq.map{{| css | stylesheet_link_tag css}.join(“\n”).html_safe
指向.rb文件的缩进错误

那不是.rb文件,那是.haml文件

我该怎么办

修正压痕。哈姆医生说:

Haml缩进可以由一个或多个制表符或空格组成。但是,缩进必须在给定文档中保持一致。硬制表符和空格不能混合使用,并且必须始终使用相同数量的制表符或空格

那里可能混合了制表符和空格。确保没有混音

指向.rb文件的缩进错误

那不是.rb文件,那是.haml文件

我该怎么办

修正压痕。哈姆医生说:

Haml缩进可以由一个或多个制表符或空格组成。但是,缩进必须在给定文档中保持一致。硬制表符和空格不能混合使用,并且必须始终使用相同数量的制表符或空格


那里可能混合了制表符和空格。确保没有混音

将rails 3升级到5时

对我来说,这是因为在coffeescript预处理器中抛出了一个异常,但我可以想象在样式表处理中也会发生这种情况

Showing /app/views/layouts/application.html.haml where line #22 raised:

SyntaxError: [stdin]:15:1: unexpected indentation

Application Trace | Framework Trace | Full Trace
(execjs):7539:12
(execjs):7543:21
(execjs):1:46
app/views/layouts/application.html.haml:22:in `_app_views_layouts_application_html_haml__1205581402263291548_70330813935540'
app/controllers/application_controller.rb:240:in `block (2 levels) in render_404'
运行

bin/rails assets:precompile
重现问题,但确定来源是一个尝试错误的过程,每次从application.js(或application.css)中删除一半的项(二进制搜索)

报告的行号[stdin]:15:1是准确的,没有文件名,帮助不大

能够安装coffeelint()


但是我怀疑在编辑器中支持这一点会大大减少将rails 3升级到5时浪费的时间

对我来说,这是因为在coffeescript预处理器中抛出了一个异常,但我可以想象在样式表处理中也会发生这种情况

Showing /app/views/layouts/application.html.haml where line #22 raised:

SyntaxError: [stdin]:15:1: unexpected indentation

Application Trace | Framework Trace | Full Trace
(execjs):7539:12
(execjs):7543:21
(execjs):1:46
app/views/layouts/application.html.haml:22:in `_app_views_layouts_application_html_haml__1205581402263291548_70330813935540'
app/controllers/application_controller.rb:240:in `block (2 levels) in render_404'
运行

bin/rails assets:precompile
重现问题,但确定来源是一个尝试错误的过程,每次从application.js(或application.css)中删除一半的项(二进制搜索)

报告的行号[stdin]:15:1是准确的,没有文件名,帮助不大

能够安装coffeelint()


但我怀疑在编辑器中支持这一点会大大减少浪费的时间

我想我从未在ruby文件中看到缩进错误。Ruby对缩进不敏感。@SergioTulentsev:我也是,所以我的意思是“幽灵”。我知道Ruby不会生成缩进示例。您发布的错误是,该文件名为
cibo_lista.haml
,它不是Ruby文件。haml文件中有大块的ruby吗?哦,忘了堆栈跟踪的其余部分。还有一些helper调用和if'sexplanation here->我想我从未在ruby文件中看到缩进错误。Ruby对缩进不敏感。@SergioTulentsev:我也是,所以我的意思是“幽灵”。我知道Ruby不会生成缩进示例。您发布的错误是,该文件名为
cibo_lista.haml
,它不是Ruby文件。haml文件中有大块的ruby吗?哦,忘了堆栈跟踪的其余部分。还有一些助手调用和if'sexplanation here->我不想投票否决答案,但你完全忽略了“从Rails 3.2迁移到Rails 5.0后”和“缩进没问题,工作了很长时间”。“@halbit:你确定迁移没有导致这些行发生变化吗?在这种情况下,我打赌缩进太大。看起来像4个空格。如果你用2个空格缩进(这是ruby事实上的标准,我想也是用haml缩进的)。我很确定,因为我的编辑器显示了“制表符”和空格(因为缩进问题),我不能再重现错误了,请对你的答案进行编辑,这样我就可以移除downvote@halfbit你的解决方案是什么please@stujo不迁移:(我还有其他问题,我不想投票否决答案,但你完全忽略了“从Rails 3.2迁移到Rails 5.0后”和“缩进没问题,工作了很长时间”。“@halbit:你肯定迁移没有引起这些行的变化吗?在这种情况下,我打赌缩进太大了。看起来像4个空格。如果你缩进2个空格会怎么样(这是ruby事实上的标准,我认为在haml中也是如此)。我是肯定的,因为我的编辑器显示了“制表符”和空格(因为缩进问题),这一点我再也不能重现错误了,请对你的答案进行编辑,这样我就可以删除错误了downvote@halfbit你的解决方案是什么please@stujo我也有其他问题