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

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 投票
1 回答
197 浏览

ruby - rails 在 rvm 配置中找不到已安装的 gem

我使用 Bitbucket 托管的 git repo 在两台机器之间拆分我的开发,以确保它们同步:

  • Linux 薄荷糖
  • 在 Windows 10 上运行 Ubuntu

我已经将我Gemfile的 , Gemfile.lock,.ruby-version.ruby-gemset设置为将两个环境与相同的配置挂钩(ruby 2.4.0 和一个名为 的 gemset cs2)。

我已将以下内容添加到我的Gemfile

bundle install成功运行:

在 Win 10 机器上,我可以运行rails c到控制台,但在 Linux Mint 机器上我遇到了:

很明显,我的 Linux Mint 机器上的某个地方配置错误,但我不确定如何找到问题所在。它似乎也只是一颗宝石。我试图清空 gemset 并重建它,但我看到了同样的问题。我尝试删除 gemset,但我再次看到了同样的情况。有任何想法吗?我尝试跑步gem install google_drive --version 2.1.5,但仍然没有运气。

我还能尝试什么?为什么会发生这种情况?

0 投票
0 回答
361 浏览

ruby-on-rails - 测试该作业已多次排队

如何编写规范来测试我的方法是否将一些 ActiveJobn时间排入队列?

我知道我可以检查作业是否已入队

我的方法正在处理n元素数组,并且应该为这个数组的每个元素排队 ActiveJob。

0 投票
1 回答
1360 浏览

javascript - 带有 Webpacker 的 Rails 5.1。使用自定义 js 类

我正在使用 rails 5.1,并且在资产管道 js 文件中使用来自 webpacker 的自定义类时遇到问题。

我的想法是,如果我有一些我想在任何地方使用的实用程序 js 类,我会将它添加到包中,然后能够在 webpacker 端的任何东西以及管道端的所有东西中使用它。

如果我想在 webpacker 端使用它,我只需将它添加到

那里没有问题,但后来我尝试在管道端使用那个类,我得到了

我这样使用它:

我已经添加到我的布局文件中:

而且我还尝试添加到管道 application.js

stuff.js 被正确编译到 public/packs/stuff.js 并且在 manifest.json

我还将它添加到了 assests.rb 初始化程序中:

我确定我错过了一些小东西,只是看了太久才看到它。

-----更新-----

当我试图让东西正常工作时,原始帖子中有一点噪音。最后,您只需要接受的答案提供的提示。

在 app/javascript/packs/application.js 添加:

并在您的布局中确保具有:

我不需要 //= 需要管道 application.js 中的东西。我也不需要在 assets.rb 初始化程序中添加公共目录。

要在像 users.js 这样的管道 js 文件中使用,只需确保在所有内容都加载后使用它,如下所示:

或者,如果您想将它内联到您的 index.slim 或您可以执行的操作中:

正确设置后,您将需要重新启动 webpack 服务器:

现在,如果您对 stuff.js 进行更改,它们应该可以按照您的预期立即编译和使用。

我最后的东西类看起来像这样:

0 投票
5 回答
4016 浏览

ruby-on-rails - 我应该将 Rails 5.1 的中间件文件放在哪里?

以前我在 lib/middleware/my_middle_ware.rb 下有我的中间件

然而,在这样做的时候,

我收到一个

rails 在哪里寻找中间件?

0 投票
3 回答
8881 浏览

mysql - Mysql2::Error: 表 'table_name' 不存在: SHOW FULL FIELDS FROM `table_name`

我正在使用 rails 5.1.1 和 mysql 5.7。我有一个迁移类:

我有一个空模型calledny.rb和一个名为companies_controller.rb.

database.yml的是:

运行时rails db:migrate出现以下错误:

我该如何解决这个错误?

0 投票
1 回答
160 浏览

ruby-on-rails - Rails 5.1 has_many 通过 - 关联字段

(请参见下面的示例架构图像)

我正在尝试users使用该email字段以及表中的id&key字段从applications表中查询单个用户。结果应包含找到的用户(如果有),以及应用程序(使用key&id字段引用)和applications_users相关数据。

示例架构

我可以很容易地手动编写 SQL 来执行这个操作:

但是,在使用 ActiveRecord 时,我终生无法正确查询。

这些是我迄今为止所做的不成功的尝试:

这可以正确获取用户,但是当我尝试访问时 Rails 会执行第二个 SQL 查询user.applications(它还返回与用户关联的所有应用程序;因此它似乎忽略了id&key条件)

这可以正确获取用户以及正确的应用程序(耶!),但是如果我尝试调用 Rails 会执行第二个 SQL 查询user.applications_users——它还会返回表内所有数据的集合applications_users(同样,忽略id&key条件)

这获得了正确的用户,但是当我尝试访问时 Rails 执行另一个 SQL 查询user.applications——同时返回所有应用程序。

无论如何,希望 Rails 天才可以对这个问题有所了解!我将是第一个承认我绝不是 Rails 专家的人。在我职业生涯的最后 10 年中,我一直在 PHP 和 C++ 编码,所以如果这是一个愚蠢的问题,请多多包涵 :)

0 投票
2 回答
44 浏览

ruby-on-rails - 重定向路线

我有一个在 Rails 中重建的旧 wordpress woocommerce 网站。

显然,它有一个 Product 模型和带路由的 Products 控制器。

该网站已准备好启动。

我唯一的问题是旧链接

我如何重定向或更改我的

我的路线文件看起来像这样

0 投票
1 回答
1001 浏览

ruby-on-rails - Rails 中的自定义 yaml 配置不起作用

我在从 yml 文件加载自定义配置数据时遇到了一些问题。我查看了一些资源,似乎无法使用它。

当我尝试从 yml 文件加载一些自定义设置时,我得到一个空哈希。

我的 application.rb 包含:

我的 myapp.yml 包含:

当我打电话时:Rails.configuration.myapp

我得到:

有什么想法可能是什么问题?

谢谢

0 投票
0 回答
336 浏览

css - Rails 5 + Bootstrap 4 导航栏显示在不应该折叠的地方

完整代码https://github.com/tenzan/shop/tree/bootstrap

application.html.erb:(参考:https ://v4-alpha.getbootstrap.com/components/navbar/#nav )

当我从桌面看到它显示为在此处输入图像描述

代替在此处输入图像描述

0 投票
1 回答
121 浏览

ruby-on-rails - 请求规范:“缺少模板错误”仅在组、文件或套件中运行时

奇怪的问题。我有许多在获取请求(索引、显示、编辑、更新) 时失败的请求规范。

异常由以下人员引发:

哪个没有找到必要的模板。

但是,当我单独运行它们时,所有这些示例都会通过。模板存在。当我在测试文件或整个套件中运行它们时,它们都失败了,但第一个失败了。

最后一件事,这个问题是在我将 Rails 从 5.0.2 升级到 5.1.1 后开始出现的。我试图在此升级之前恢复提交,一切都恢复正常。我查看了Rails 发行说明,但没有发现任何相关内容......

任何帮助,将不胜感激 !