问题标签 [ruby-on-rails-7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
46 浏览

ruby-on-rails - 如何解决 NoMethodError:未定义的方法“glob?” 对于 nil:Rails 7 中的 NilClass

我正在使用ruby 3.1.0p0Rails 7.0.1。我最近从Rails 6.1和升级ruby 2.7

当我在本地托管网站时,我没有遇到任何问题。但是,当我将站点部署到Ubuntu 20.04服务器时nginx v1.18.0,站点无法加载,并且出现以下错误:

它出现在 [GEM_ROOT]/gems/actionpack-7.0.1/lib/action_dispatch/journey/route.rb:138:in `glob?' 的第 138 行

有没有人遇到过这样的情况?这似乎真的很奇怪,我不知道我需要做什么来解决它。

编辑:

我决定在本地测试登台和生产。如果我做

RAILS_ENV=staging bin/rails s或者 RAILS_ENV=production bin/rails s

我的本地机器上也发生了同样的错误。所以有些事情只会在它不在开发环境中运行时发生。

完整的堆栈跟踪是:

0 投票
0 回答
46 浏览

ruby-on-rails - Rails 7 - 在开发中自动拾取资产不起作用

application.js由于某种未知原因,当我在浏览器中按 F5 时,Rails 7(开发环境)不会自动获取更改。位置application.js是默认的。我正在使用几乎所有的默认设置。

当我运行服务器时,它会从某个缓存版本中获取 javascript。我需要明确rails assets:recompile地让它工作。

Importmap 看起来很标准:

布局文件似乎也很标准:

我试图config.importmap.sweep_cache = true在我的development.rb(根据 importmap 文档)中设置,但似乎没有效果。

在这一点上,我非常绝望,无法理解为什么我需要rails assets:precompile在我的开发环境中。

此外,我没有在“localhost”域上运行我的应用程序,它位于类似dev.server-somewhere.com(因此可以从任何地方访问)的 SSH 重定向上,类似于 ngrok。不确定这是否是问题的原因。

澄清一下:我正在寻找没有实时刷新功能,只需使用 F5 页面刷新的标准方法即可。

0 投票
0 回答
78 浏览

ruby-on-rails - Rails 7/Production - 您是否尝试打开与非 SSL Puma 的 SSL 连接?

我在 Rails v7.0.1 的生产模式下不断收到此错误,HTTP parse error, malformed request: #<Puma::HttpParserError: Invalid HTTP format, parsing fails. Are you trying to open an SSL connection to a non-SSL Puma?我不知道为什么。我尝试了其他解决方案的所有内容,这些解决方案主要与本地环境相关,但我一直在生产中得到它。

我已经设置config.force_ssltrue.

Nginx 会议

以前这个设置对我有用。请帮忙,我现在要疯了。

宝石文件

0 投票
2 回答
327 浏览

ruby-on-rails - 无法打开库“vips.42”;无法打开库“libvips.42.dylib”

从 rails 6 升级到 rails 7,并在本地运行一些 ActiveStorage 方法时,我看到:

有许多类似的 GitHub 问题:(例如这里)。

我不确定是否需要安装 ruby​​-vips gem,或者我的操作系统/共享库是否有问题。

请注意,其他一些人报告了相同的错误。我想知道它是否可能是一个错误?

0 投票
2 回答
127 浏览

ruby-on-rails - 如何在 Rails ActionMailbox 中处理转发的电子邮件?

我们正在使用 Rails 7 构建一个应用程序,除其他功能外,该应用程序应在电子邮件发送到其电子邮件地址之一(例如,格式ticket-{uuid}@ourdomain.com)时执行一些操作。

Rails 的 ActionMailbox 路由适用于直接电子邮件。但是,在转发电子邮件时,ActionMailbox 根本无法识别它们。

我们如何确保使用 ActionMailbox 也能正确处理和路由转发的电子邮件?


编辑:我们正在使用的代码的简化版本:

0 投票
1 回答
134 浏览

ruby-on-rails - Rails 7 css 资产无法在生产中运行,需要帮助了解资产管道在没有 webpacker 的情况下如何工作

尝试使用顺风和 postcss 的 rails 7。

我在 assets/stylesheets 中有一些样式表,我通过同一文件夹中的 imports.css 文件导入这些样式表。

然后我在 application.html.erb 中导入该文件,其中包含以下内容:

在开发过程中,一切都按预期运行良好,与顺风相得益彰。由于 postcss,导入工作正常。但是在生产(nginx,puma)中,它试图拉入这些文件并失败。对于我拥有的每个样式表,我在浏览器控制台中看到:

获取https://mywebsite.com/assets/style/stylesheet1.css net::ERR_ABORTED 404(未找到)

我正在尝试将我的大脑从 rails 6 中的 webpacker 转移,不确定我需要在这里做什么......一些想法:

  1. 我是否需要设置它以便将样式表复制到 public/assets 文件夹或其他东西?在production.rb中有设置吗?(我觉得默认情况下rails应该已经这样做了)

  2. 我是否需要在部署时手动预编译这些资产?

帮助将不胜感激。谢谢!

0 投票
0 回答
5 浏览

tailwind-css - 当我尝试在我的页面中输入数据并单击提交时,没有显示方法错误问题

用户控制器

类 UserController < ApplicationController def edit @user = current_user end

结尾

私人的

def update_params # params.require(:user).permit(:zipcode) params.require(:user).permit(:organization_name, :zipcode) end end

routes.rb 资源:用户,仅:%i[编辑]

edit.html.erb 中的 Simpleform <%= simple_form_for(@user, html: {'data-turbo': false}, as: current_user) do |f| %>

0 投票
1 回答
17 浏览

ruby-on-rails - 在 docker 映像中运行 yarn build:css 时,我的目标文件夹为空

这是我的 Dockerfile

在我的 package.json 我有以下

}

当我运行docker-compose build正常但命令RUN yarn build:css无效时,builds文件夹为空。

0 投票
1 回答
94 浏览

javascript - Bootstrap 5 Javascript 函数在 Rails 7 应用程序中不起作用

我正在尝试设置我的第一个 Rails 7 应用程序并正确安装了 Bootstrap 5(您可以通过 CSS 看到)并消除了所有错误消息,但是 javascript 函数(即下拉菜单、offcanvas 等)是不工作。

我已经使用以下代码对其进行了测试:

并且两个 console.log 语句都产生了正确的结果,让我相信 js 和 jquery 工作正常,并且它与引导程序有关。

这是我的宝石文件:

这是我的application.js,位于 'javascript/controllers/application.js but somehow also inassets/builds/application.js . I'm not using webpack, rather rollup installed with $ ./bin/rails javascript:install:rollup` 中:

谁能看到我哪里出错了?

0 投票
1 回答
18 浏览

ruby-on-rails - sassc-rails:为什么 math.div(...) 不起作用?

我只是想用 Rails 7 创建一个新的 rails 应用程序。我的 Gem 文件中有 sassc-rails,似乎它正在尝试编译各种 .scss 文件(我有自己的小 scss 库,我正在尝试重用)。然而,它的挣扎如下:

SCSS:

错误信息:

我在 Rails 6 应用程序中使用了完全相同的代码,并且在那里正确编译了所有内容,所以 scss 代码本身应该是有效的吗?