小编tob*_*yte的帖子

Bootstrap 3下拉列表不适用于Rails 4和Turbolinks

我最近将我的网站升级到Bootstrap 3,并且正在浏览所有布局以更新类名和各种功能以正常工作.我最近的问题是下降似乎不起作用.起初我以为我没有正确地为我的导航栏实现代码,但是在感到沮丧之后,我实际上只是试图摆脱我的导航栏并直接使用BS 3文档中的一个.即使该代码也不起作用.我已经研究过了,我相当确定我已经加载了所有正确的.js库.这是我的application.js:

//= require jquery
//= require bootstrap-sprockets
//= require jquery.ui.datepicker
//= require jquery.timepicker.js
//= require jquery_ujs
//= require turbolinks
//= require bootstrap
//= require jquery.remotipart
//= require chosen-jquery
//= require_tree .
Run Code Online (Sandbox Code Playgroud)

这是我出现的内容<head>:

  <script data-turbolinks-track="true" src="/assets/jquery.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/affix.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/alert.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/button.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/carousel.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/collapse.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/dropdown.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/tab.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/transition.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/scrollspy.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/modal.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/tooltip.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/popover.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap-sprockets.js?body=1"></script> …
Run Code Online (Sandbox Code Playgroud)

jquery ruby-on-rails twitter-bootstrap turbolinks twitter-bootstrap-3

10
推荐指数
2
解决办法
7296
查看次数

即使在client_max_body_size 100M之后,仍然会获得413请求实体太大

我在数字海洋上使用Rails和Nginx并且我一直在尝试上传一个17.6 MB的文件,413 Request Entity Too Large在设置client_max_body_size 100M我的/etc/nginx/nginx.conf文件后我仍然得到了.

这是文件的片段:

http {

  ##
  # Basic Settings
  ##

  client_max_body_size 100M;
  sendfile on;
  tcp_nopush on;
  ...
}
Run Code Online (Sandbox Code Playgroud)

设置完之后我就习惯了sudo service nginx reload.当这不起作用时,我甚至使用sudo shutdown -r now然后cap production puma:start从我的本地机器完全重启.我也尝试过client_max_body_size 0;,根据我的理解,应该完全禁用文件大小的检查.什么都行不通.此外,在达到这一点时,我在client_max_body_size语句的位置上犯了一些错误,并且在这些情况下服务器无法正确启动出现"出错"错误,所以我很确定这些更改制作是正确的文件.

有什么我可能会失踪?是否还有其他地方我没有配置这个?我正在配置它的方式是否有一些我缺少的东西?任何指针都将非常感激.

ruby-on-rails nginx digital-ocean

8
推荐指数
1
解决办法
6606
查看次数

无法再次重命名 ActiveRecord 表。“[表]_pkey”不存在

前段时间,我运行了以下 rails 迁移来更改表的名称:

class RenameMaterialDonationsToMaterialDonationRequests < ActiveRecord::Migration
  def change
    rename_table :material_donations, :material_donation_requests
  end
end
Run Code Online (Sandbox Code Playgroud)

现在我需要再次重命名表。这是我的迁移:

class RenameMaterialDonationRequestsToHelpRequests < ActiveRecord::Migration
  def change
    rename_table :material_donation_requests, :help_requests
  end
end
Run Code Online (Sandbox Code Playgroud)

但是,当我运行迁移时,出现以下错误:

PG::Error: ERROR:  relation "material_donation_requests_pkey" does not exist
: ALTER INDEX "material_donation_requests_pkey" RENAME TO "help_requests_pkey"/Users/[me]/.rvm/gems/ruby-2.1.4/gems/activerecord-4.2.4/lib/active_record/connection_adapters/postgresql/database_statements.rb:155:in `exec'
Run Code Online (Sandbox Code Playgroud)

我正在使用 Postgresql。在 pgAdmin3 中,我可以看到 pkey 仍然保留了第一次迁移之前的表名:

CONSTRAINT material_donations_pkey PRIMARY KEY (id)
Run Code Online (Sandbox Code Playgroud)

如何解决此问题以重命名表?

postgresql activerecord ruby-on-rails

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

使用RSPEC进行测试时突然出现无法解释的活动记录连接超时

这是我几乎一无所知的地方,所以请提前道歉.我有一套超过800个rspec测试.在运行整个集合或仅仅是特定的测试文件时突然而且莫名其妙地,在仅仅其中一些之后(例如20个左右,虽然它们的数字从不完全相同),每个单独的测试都会以相同的错误开始失败:

 Failure/Error: Unable to find matching line from backtrace
 ActiveRecord::ConnectionTimeoutError:
   could not obtain a database connection within 5.000 seconds (waited 5.000 seconds)
Run Code Online (Sandbox Code Playgroud)

在典型的运行中,我会在20次左右的请求测试后开始收到这些错误,其余的780+测试都会因上述完全相同的错误而失败.我已经尝试回到之前测试完美的git提交和分支.没有运气 - 仍有780多个失败.还完全删除了重新创建的测试数据库.也没有运气.

我已经阅读了许多关于连接池等的线程,但我恐怕我不知道如何诊断甚至正在发生的事情.以下是我现在所知道的事实:

  • 使用Postgresql
  • 据我所知,开发环境运行良好
  • 在一切工作正常的时候和现在,我没有对我所知道的环境进行任何更改/升级.甚至没有任何数据库迁移.仅仅更改模型,视图和控制器代码.正如我所提到的,回到之前的提交并没有解决任何问题.
  • config.use_transactional_fixtures = false 在spec_helper.rb中,因为我正在通过Selenium测试ajax功能.
  • 但是,无论Selenium是否用于特定的测试集,测试都会失败.即使我只运行不使用Selenium的测试,在20次左右的测试后仍然会出现故障.

我使用Database Cleaner而不是事务夹具,具有以下配置:

  config.before(:suite) do
    DatabaseCleaner.clean_with(:truncation)
  end

  config.before(:each) do
    DatabaseCleaner.strategy = :transaction
  end

  config.before(:each, :js => true) do
    DatabaseCleaner.strategy = :truncation
  end

  config.before(:each) do
    DatabaseCleaner.start
  end

  config.after(:each) do
    DatabaseCleaner.clean
  end
Run Code Online (Sandbox Code Playgroud)

有什么想法在这里发生了什么?更具体地说,我应该在哪些想法看看问题是什么?我几乎没有处理此类ActiveRecord问题的经验,我甚至不知道从哪里开始.

更新虽然我仍然不知道为什么会发生这种情况,但我确实知道导致它的代码是什么.在最近的提交中,我添加了在新线程中发送通知电子邮件.这是代码:

    def teacher_notification_email
      Thread.new do
        UserMailer.accepted_parent_invitation_email(@parent_profile).deliver
        ActiveRecord::Base.connection.close
      end
    end
Run Code Online (Sandbox Code Playgroud)

我在应用程序的许多其他地方使用了这个确切的模式(使用不同的电子邮件),所有这些都经过测试.出于某种原因,这个特定的原因导致数据库超时错误.关于为什么会发生这种情况的任何想法都是受欢

更新 由于我还没有理解在这个实例中线程如何工作的阶段,我不知道问题的确切来源,除此之外:从我读过的内容来看,很难以编程方式控制执行以这种方式创建的线程.但是,我找到了解决方案.我已经将块更改为以下块而不是上面的块:

    def teacher_notification_email
      if …
Run Code Online (Sandbox Code Playgroud)

selenium activerecord rspec ruby-on-rails database-cleaner

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

如何将图标添加到故事板中的iOS静态uitableview单元格

我用三个静态单元创建了一个UITableView.这是"更多......"部分的子菜单.我想为三个单元格中的每一个都有一个图标,但似乎没有任何方法可以控制内容视图中标签的大小和位置,以便将其移动到右侧,从而为左边的图标.标签似乎没有移动也无法调整大小.

在故事板中有没有办法做到这一点?如果绝对必要,我可以在代码中执行此操作,但如果可能的话,我更愿意在故事板中完成此操作.

这是我想要的截图.在此输入图像描述

uitableview ios swift

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

如何在标签栏项目被点击时强制使其进入根目录

我是iOS和Swift的新手。在我的情节提要中,我设置了一个标签栏控制器,其中最右边的项是“更多”项,该项导致嵌入到导航控制器中的表格视图控制器。表格视图(静态)中的每个项目都转到视图控制器(例如,“视图1”,“视图2”和“视图3”)。

默认行为如下。假设我点击“更多”。然后,我在表格中查看“视图1”,“视图2”和“视图3”的单元格。然后,假设我点击“查看1”。如果然后我在选项卡栏控制器中单击另一个项目,然后再次单击“更多”,而不是将我带到表格视图,它将带我到“视图1”,因为那是我上次使用的最后一件事在“更多”中。我希望这样的行为是:如果我在另一个标签栏元素的“更多”之外点击,无论何时我再次点击“更多”,我都希望它始终将我带到表格视图,无论我正在查看什么以前在“更多”中。

本质上,我希望“更多”忘记其状态或重置其状态。

我该如何强迫这种情况发生?

xcode ios swift

0
推荐指数
1
解决办法
1602
查看次数