小编hel*_*ion的帖子

工厂女孩,依赖工厂

UPDATE

我回去使用Fixtures.IMOP,固定装置比工厂更好; 更容易使用,更容易理解,更容易理解(没有魔力).我的建议:将测试库限制为非常基础(听DHH)...使用minitest和灯具.

原帖

在我的应用程序中,一个区有很多学校,一个学校有很多用途,一个用户有很多帐户,一个帐户有一个角色.为了创建完整的测试工厂,我需要创建一个贯穿工厂的用户和学校.我在最近的尝试中得到了"堆栈级太深"的错误.

我的user_test.rb

 FactoryGirl.define do

   factory :district do
     name "Seattle"
   end

   factory :school do
     association :primarycontact, factory: :user # expecting this to attach the user_id from factory :user as :primary contact_id in the school model
     association :district, factory: :district # expecting this to attach the :district_id from the :district factory as :district_id in the school model
     name "Test School"
   end

   factory :user do, aliases: [:primarycontact]
     email "adam@example.com"
     name "Who What"
     username "wwhat"
     password "123456"
     password_confirmation { |u| …
Run Code Online (Sandbox Code Playgroud)

minitest ruby-on-rails-3 factory-bot

5
推荐指数
1
解决办法
4538
查看次数

在simple_form中为某些选择选项添加禁用

用户可以选择5个选项.一旦他们选择了一个,他们就无法再选择它.目前,我只是从列表中删除以前使用的选项...因此,他们只能从以前未使用过的选项中进行选择.我唯一不喜欢的是,当用户向数据库添加新记录时,他们可能想知道为什么列表中似乎缺少选项.

我的一个想法是将先前使用的选项留在列表中,但将它们交叉并禁用它们.

是否可以禁用(和/或添加类)仅选择某些选项?Simple_form似乎有一个option_html帮助器,但没有看到它记录.

ruby-on-rails-3 simple-form

5
推荐指数
2
解决办法
3608
查看次数

通过活动作业处理依赖性破坏

我有几个有很多孩子的模特.依赖性破坏变得非常沉重.任何人都知道如何将依赖性破坏与活跃的工作联系起来?或者,我唯一的选择是通过父模型上的回调删除依赖的销毁和角色我自己的工作?

dependent-destroy ruby-on-rails-4 rails-activejob

5
推荐指数
1
解决办法
910
查看次数

如何使用rails 6安装expose-loader 3.0.0?

我仍然对 jQuery 有一些依赖。对于 Rails 6 和 Webpack,需要公开 jquery,否则会发生错误。我已经使用 Exposure-loader 1.0.3 一段时间了,没有出现任何问题,但是,如果我升级到 Exposure-loader 2.0.0 或 3.0.0,我会得到:

\n
ERROR in ./node_modules/jquery/dist/jquery.js\nModule build failed (from ./node_modules/expose-loader/dist/cjs.js):\nTypeError: this.getOptions is not a function\n    at Object.loader (/Users/drama/Sites/FlightRecord/node_modules/expose-loader/dist/index.js:19:24)\n\xe2\x84\xb9 \xef\xbd\xa2wdm\xef\xbd\xa3: Failed to compile.\n
Run Code Online (Sandbox Code Playgroud)\n

有一些关于此问题的博客文章,但所有内容都围绕environment.js 中关联语法的格式设置...我尝试了几种不同的语法样式,它们都会导致相同的错误。

\n

使用 hide-loader 1.0.3,我只需在environment.js 中添加以下内容即可公开 jQuery:

\n
environment.loaders.append("jquery", {\n  test: require.resolve("jquery"),\n  use: [\n    { loader: "expose-loader", options: { exposes: ["$", "jQuery"] } }\n  ],\n});\n
Run Code Online (Sandbox Code Playgroud)\n

如果与 hide-loader >= 2 一起使用,相同的语法会导致上述错误。因此,令人不满意的代码似乎位于environment.loaders.append 调用中。我已经阅读了变更日志、文档、stackoverflow 和博客...但是,我所做的一切似乎都无法满足新的公开加载程序。

\n

现在,我又回到只使用 1.0.3...但我想克服这个问题并让 3.0.0 正常工作。

\n

如何使用 hide-loader 3.0.0 在 …

ruby-on-rails webpack yarnpkg ruby-on-rails-6.1 expose-loader

5
推荐指数
1
解决办法
460
查看次数

如何让删除链接响应Rails 7中的turbo_stream和html?

我在 Rails 7 中有一个删除链接,可以使用 Turbo_stream 或 html 正常运行,但不是每一个都可以。

link_to 'delete', @object, data: { turbo_method: 'delete', turbo_confirm: 'Really?' }
Run Code Online (Sandbox Code Playgroud)

我从索引页调用此链接,该链接应使用turbo_stream 响应来删除记录并删除表行。索引页包含在turbo-frame 标签中。我还从显示页面调用此方法,其中 html 响应应删除记录并重定向回索引页面。显示页面未包含在 Turbo-Frame 标签中。

显示页面链接正确命中销毁操作并销毁记录——但是,它不会重定向。它实际上响应turbo_stream。如果我从销毁操作中删除 format.turbo_stream 块,则同一链接会正确命中 format.html 响应并重定向。该链接知道如何响应 format.html,但它会尝试响应 format.turbo_stream,即使该链接未包含在 Turbo-frame 标记中。

在 Rails 7 中,数据属性“turbo_method: 'delete'”会导致turbo_stream 调用。有没有办法告诉该链接响应 format.html?

当来自链接的传入响应是turbo_stream 时,如何获取显示页面上的链接以响应 format.html 并重定向?

ruby-on-rails turbo ruby-on-rails-7

5
推荐指数
1
解决办法
2858
查看次数

从找到返回独特的年份

可能重复:
Rails:从列中选择唯一值

假设我在过去两年(2011年和2012年)创建了5000条记录.我如何遍历所有这些记录并返回仅有独特年份的数组[2011,2012]?

我正在创建一个报告,其中每年标记的行记录退出,列标记为月.然后td由每年每个月的总计填充.

ruby-on-rails

4
推荐指数
1
解决办法
553
查看次数

没有链接的Bootstrap工具提示

为了节省窄表格单元格中的空间,我想使用引导工具提示在悬停时显示额外的内容.但是,工具提示在a标记中使用:rel选项.我不需要链接,只需要它的选项...而且我不希望链接到达任何地方.我用过:

  link_to display.text, "#", :rel => "tooltip", ...blah..blah
  link_to_function display.text, "#", :rel => ...blah...blah
Run Code Online (Sandbox Code Playgroud)

两者都有效,但两者都返回到页面顶部.

它可能是臭臭的代码,使用的链接并不是真正的链接来获取其他功能.是否有创建虚拟链接的轨道方式?是否有"批准"的方法来实现这一目标?

tooltip twitter-bootstrap

4
推荐指数
1
解决办法
4308
查看次数

测试是否生成了没有错误的prawn pdf

使用rails minitest和capybara如何测试pdf页面是否创建没有错误?我在考虑检查status_code是最简单的,但不确定capybara是否支持这一点.

scenario "opens pdf without errors" do
  visit progress_report_path(format: 'pdf')
  page.must_have_status_code(200)
end
Run Code Online (Sandbox Code Playgroud)

我知道capybara没有"must_have_status_code"方法......但是,这说明了我想要完成的事情.

如何测试rails minitest capybara中的状态代码?或者,如何测试pdf页面是否由prawn生成且没有错误?

prawn minitest capybara ruby-on-rails-4

3
推荐指数
1
解决办法
757
查看次数

自动保存表单草稿

Stack Overflow 如何自动保存此表单的草稿?我认为 AJAX。是否有使用此功能的 rails 方式或 gem?

此外,它实际上是一个单独的草稿模型还是自动创建的表单,然后从那里开始使用编辑操作?

我知道我是专门询问 Stack Overflow 的用法,但是,一般来说。

ajax ruby-on-rails-3

2
推荐指数
1
解决办法
2068
查看次数

如何解决heroku"您正在尝试在更改Gemfile后以部署模式安装"错误?

我知道这个问题已经出现在SA上了 - 但是,没有什么能解决这个问题.据我所知,这只是表明我的gemfile和gemfile.lock文件不同步.删除gemfile.lock文件并重新捆绑应解决此问题.我已经尝试过多次尝试调整我的gemfile,提交和推送---但是,没有任何效果.任何熟悉这个heroku堆栈跟踪的人都可以提供一些指导吗?这突然改变了我.

尝试:

- remove gemfile.lock and bundle install
- update bundler
- remove older versions of multiple installed gems
- 

git push heroku
 Counting objects: 41, done.
 Delta compression using up to 4 threads.
 Compressing objects: 100% (40/40), done.
 Writing objects: 100% (41/41), 5.64 KiB | 0 bytes/s, done.
 Total 41 (delta 27), reused 0 (delta 0)

 remote: Compressing source files... done.
 remote: Building source:
 remote:
 remote: -----> Ruby app detected
 remote: -----> Compiling Ruby/Rails
 remote: -----> Using …
Run Code Online (Sandbox Code Playgroud)

git ruby-on-rails heroku bundler

2
推荐指数
1
解决办法
696
查看次数