从Association创建的重复记录

我正在使用Mongoid,Rails和Fabrications,并完全失去了这种情况。 任何想法都非常感激,但我知道这很复杂。 我只想制作一个用户并且只有四个已加入的组,但我一直在加载八个。 这是我的代码的相关部分 @ user1 = Fabricate.build(:已注册) @ user1.joined_groups <“Gang of 13”,:type =>:custom})] 当我运行@user1.joined_groups.size我得到4,但当我执行@user1.joined_groups.map(&:name) ,我得到8条记录: # # # # # # # # (我用一个替换了所有BSON :: ObjectId(’4eab3ca5f11aac2701000009’)语句并删除了很多中间代码。 完整的代码集可在此处获取: https : //gist.github.com/1323984 大多数bizzarre只是调用map可能会导致问题。 将“刚刚创建的用户放在这些组中:” puts @ user1.joined_groups.map(&:name) 放“然后” puts @ user1.joined_groups.map(&:name) 生成这个(!): 刚刚创建了这些组的用户: 丹科尔 CA CA46 帮派13 其次是 丹科尔 CA CA46 帮派13 丹科尔 CA CA46 帮派13 […]

请帮助您使用此测试版代码,我该如何解决?

可能重复: 为什么这段代码不会产生预期的结果呢? 我有代码: def check_beta_code beta_code_array = [‘AAAAAAAAAA’, ‘BBBBBBBBBB’, ‘CCCCCCCCCC’, ‘DDDDDDDDDD’, ‘EEEEEEEEEE’] beta_code_array.each do |code| if :beta_code != code errors.add(:beta_code, “Invalid Beta Code”) end end end 此代码的问题在于,即使有人输入了正确的密码,仍然会生成4个错误,因为其他4个错误都不正确。

Javascript没有显示为Slick Gem

我已经使用以下git安装了jquery-slick-rails gem: https : //github.com/bodrovis/jquery-slick-rails 现在我有了以下文件 资产/ Java脚本/ application.js中 //= require jquery //= require jquery_ujs //= require turbolinks //= require_tree . //= require jquery.slick 资产/样式表/ application.css /* *= require headerandfooter *= require_self *= require slick */ +bits of CSS here … 但我在我的页面上看不到这个gem的任何Javascript。 我页面上只有JS: 这里的信息是我的观点/布局/ application.html.erb我还没有修改(不建议在github页面上): true %> true %> true %> true %>

轨道3中的自动生成路径?

从一些railscast( 特别是这个 )的外观来看,似乎有一些“* _path”变量的自动生成并没有发生在我身上。 在这个rails cast中,edit_mutliple_products_path似乎是自动生成的(我通常不喜欢使用该单词)。 当我按照相同的步骤尝试访问类似的路径时,我得到这个: undefined local variable or method `edit_multiple_distributions_workflows_path’ for #<#:0x132af3290>

如何在rails 4中管理多个css文件?

我有app/views/layouts/mycontroller.html.erb包含的控制器下的所有内容的css文件: 但我已经将我的css分解为一些特定视图,例如home.css.scss(可能不是解决它的最好方法吗?)。 之前,我还包括额外的CSS。 例如在app/views/mycontroller/home.html.erb ,我将使用另一个styleshet_link_tag : 我在我的Gemfile中包含了gem’sass gem ‘sass-rails’, ‘4.0.1’ ,并且预编译发生在heroku上。 没有CSS似乎是加载或只加载其中的一部分而不是两组CSS规则的总和。

如何查看请求对象的外观?

每当我尝试 logger.info (“REQUEST: \n ” + request.to_yaml) 我收到此错误: can’t dump anonymous class Class 查看请求对象中的内容(以可读方式)的最佳方法是什么?

错误310.使用nginx + rails 3重定向太多

您好,请查看下面我的nginx配置。 当我尝试访问我的主页http://mydomain.com时出现以下错误。 当我使用Chrome开发者工具查看重定向时,我发现http://mydomain.com正在重定向到https://mydomain.com并来回。 我查看了我的源代码,但我找不到任何重定向。 我正在使用ssl_requirement插件。 任何帮助是极大的赞赏。 Error 310 (net::ERR_TOO_MANY_REDIRECTS): There were too many redirects. 下面是我的nginx配置文件 server { listen 80; server_name www.mydomain.com; rewrite ^/(.*) http://mydomain.com/$1 permanent; } server { listen 80; server_name mydomain.com; access_log /var/www/mydomain/current/log/access.log; root /var/www/mydomain/current/public; passenger_enabled on; passenger_use_global_queue on; location ~ /\.ht { deny all; } } server { listen 443; ssl on; ssl_certificate […]

如何从rails表单中的对象关联提供数据?

我有一个对象,我正在开发一个具有许多属性的控制器。 但是,由于我创建的数据模型,我必须编辑的大多数属性都是通过其他表中的关联保存的。 EG:我的文章通过标签表有标签(其他表中保存了大约20个其他属性)。 该文章通过多态关联等具有许多其他属性。 关联工作得很好,并且可以保存每个属性的多个条目。 但是,有一件事很难将编辑操作简化为控制器。 通常你可以保存@article = Article.find(params [:id])并显示所有属性。 这意味着表单具有服务的当前属性,并且该人员可以进行更改。 但是,对于通过关联保存的内容,这些字段为空。 我有一个shiv解决方案,例如,@ article.tag_list = @ article.tags.map(&:name)。 这使字段现在显示标签。 但是,对每个属性执行此操作会为控制器中的编辑操作添加许多行。 有没有更好的办法? 如果有一些代码我应该发布,我可以 – 只是没有,因为它现在很乱,所以我想我会解释。

Ruby on Rails:控制台/ .rb文件中的行为之间的差异

我想使用存储在credentials.yml.enc文件中的信息来获取Rails 5.2应用程序。 但是,我正在努力获得一个在控制台中完美运行的命令,以便在插入.rb文件时以相同的方式运行。 在Rails控制台(在我的本地开发计算机上) Rails.application.credentials.username返回”my_username” 如果我在一个非常简单的db_backup.rb文件中插入此行,如下所示,我收到错误: NameError: uninitialized constant #<Class:#>::Rails db_backup.rb : Model.new(:db_backup, ‘Description for db_backup’) do ## # PostgreSQL [Database] # database PostgreSQL do |db| db.username = Rails.application.credentials.username end end 请问你能解释为什么我在Rails控制台/ .rb文件中使用完全相同的代码行时会得到不同的行为吗?

Express Hello World – Heroku Foreman返回Code 5,’npm start’工作得很好

我正在按照一个教程,我在Express中创建了一个简单的“Hello World”。 本教程通过’npm start’将所有内容完成并在本地运行。 然后,本教程继续准备通过Toolbelt将代码上传到Heroku。 遵循指示(据我所知),我执行’foreman start’。 当我点击localhost URI时,我得到了我期望的基本HTML,但没有CSS(毫无疑问与我在控制台窗口中看到的ERR_CONNECTION_REFUSED输出相关,这可能与整个服务器关闭有关)。 查看命令行的输出,有文本: exited with code 5 sending SIGKILL to all processes 我在谷歌搜索了Foreman的代码5是什么,但没有看到任何讨论代码的地方5.我在https://github.com/ddollar/foreman上下载了Foreman的源代码,但仍然无法弄清楚代码5是什么(!?!?)。 如果我知道代码5意味着什么,我怀疑我可以解决这个问题。 那里的任何人都知道它是什么?