小编Joh*_*ohn的帖子

为什么我的rails服务器记录了两次?

我的rails服务器似乎记录了两次,不知道这里发生了什么,我应该怎么做才能调查这个?

在此输入图像描述

我的宝石文件

source 'https://rubygems.org'
ruby '2.1.0'

gem 'rails', '4.0.1'
gem 'haml-rails'
gem 'pg', '~> 0.17.1'
gem 'redis'
gem 'redis-namespace'
gem 'thin', '~> 1.6.1'
gem 'rabl'
gem 'underscore-rails'

#assets
gem 'sass-rails', '~> 4.0.0'
gem 'uglifier', '>= 1.3.0'
gem 'foundation-rails'
gem 'font-awesome-rails'

#javascript
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails'
gem 'jbuilder', '~> 1.2'
gem 'angularjs-rails', '~> 1.2.7'
gem 'ngmin-rails', '~> 0.4.0'

#user auth
gem 'devise', '3.0.0'
gem 'omniauth'
gem 'omniauth-twitter'
gem 'uuidtools'


#misc tools
gem 'twitter'

#heroku
gem 'rails_12factor'

group :development, :test …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

22
推荐指数
3
解决办法
3049
查看次数

为什么bootstrap-datepicker会在显示时触发'show.bs.modal'?

我有一个模态,如下图所示,

当我选择包含日期选择器的输入字段时,引导模态事件.on('show.bs.modal')被触发,这是非常有问题的,因为当合法显示模态时我正在采取各种异步操作.我认为模态已经显示,并且此事件不应该被触发.

我在bootstrap事件'show.bs.modal'上有一个监听器,如下所述,

  handleModalLaunch: () ->
    $(@modalClass).on 'show.bs.modal', (event) =>
      return if event.dates
      promise = new Promise ( (resolve, reject) =>
        @setModalData(event)
        if (@interactionData)
          resolve(@interactionData)
        else
          reject(false)
      )
      promise.then(
        (results) =>
          @trigger 'setRooms', @callBacks
          @trigger 'setStudentInfo', @callBacks
        (err) ->
          err
      )
Run Code Online (Sandbox Code Playgroud)

并且有效地,侦听器再次被触发,随后调用promise和相关的回调,事件的触发是有问题的,因为模式已经显示并且我不希望这些回调/承诺被运行.

我添加了return if event.dates(event.dates作为datepicker事件独有的属性),在日期选择器触发模态显示事件的情况下基本上将此代码短路,但当然,这是hacky,我想更好地理解为什么datepicker本身正在触发show事件.潜在地,因为我的节目甚至听众都与模态的类相关联,显示日期选择器的行为可能继承了父模态的目标,并且可能本身就是模态,即模态(datepicker)被显示并且因为日期选择器从父模态继承,事件触发,好像它是'显示'的父模式.我完全混淆了这个吗?(实际上,我现在看起来更清楚,但仍然需要了解如何修复.)

twitter-bootstrap bootstrap-datepicker

9
推荐指数
2
解决办法
3857
查看次数

如何正确配置rails 4和mongoid?

我有很多麻烦让mongo和rails 4很好地玩,目前我的gemfile看起来像

source 'https://rubygems.org'
ruby '2.0.0'

gem 'rails', '4.0.0'
gem 'sass-rails', '~> 4.0.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails'
gem 'jbuilder', '~> 1.2'
gem "zeus", "~> 0.13.3"
gem "thin", "~> 1.6.0"
gem "pry", "~> 0.9.12.2"
gem "rspec-rails", "~> 2.14.0"
gem "font-awesome-rails"
gem "haml", "~> 4.0.3"
gem "skrollr-rails", "~> 0.6.12"
gem "zurb-foundation", "~> 4.3.2"
gem 'rails_12factor', group: :production
gem "bourbon", "~> 3.1.8"
gem "gon", "~> 4.1.1"
gem "d3-rails"
gem 'underscore-rails'
gem 'mongoid', github: 'mongoid/mongoid'

group :doc do …
Run Code Online (Sandbox Code Playgroud)

mongodb ruby-on-rails-4

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

为什么 github 页面无法正确呈现我的代码块?

我正在使用https://github.com/mmistakes/so-simple-theme,这非常好。看起来昨晚 github 正确地突出显示了我的围栏代码块。在当地,在发展中,一切似乎都很好。但是当我推送到 github 存储库时,受保护的代码块不会生成正确的 html 结构以确保代码突出显示。我不知道如何在我的 SO 帖子中显示它。

鉴于以下回购协议

https://github.com/rubyonrailstutor/rubyonrailstutor.github.io

考虑这个屏幕截图

在此输入图像描述

左侧显示的页面具有正确的 html 结构,右侧的 github 页面显示与左侧相同的代码则没有。我可以看什么来进一步调试这个?谢谢。

为了更深入,我使用 kramdown 风格 ~~~

#### modify spec/spec_helper.rb

~~~ruby
  config.expect_with :rspec do |c|
    c.syntax = :expect
  end
~~~ 

#### modify spec/models/restaurant_spec.rb

~~~ ruby
  require 'spec_helper'

  describe Restaurant do
    subject(:restaurant) { FactoryGirl.build(:restaurant, name: nil)}
    it {expect(restaurant.valid?).to be_false}
  end
~~~ 
Run Code Online (Sandbox Code Playgroud)

jekyll github-pages

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

Hartl Rails第8.3节rspec错误

我正在通过hartl rails教程

我在8.3节的末尾,应用程序运行正常,但我收到了一个rspec错误

1) User pages signup with valid information after saving the user 
 Failure/Error: it { should have_link('Sign out') }
   expected link "Sign out" to return something
 # ./spec/requests/user_pages_spec.rb:48:in `block (5 levels) in <top (required)>'
Run Code Online (Sandbox Code Playgroud)

user_pages_spec.rb中涉及的部分是

it "should create a user" do
    expect { click_button submit }.to change(User, :count).by(1)
  end  
  describe "after saving the user" do
    it { should have_link('Sign out') }
  end
Run Code Online (Sandbox Code Playgroud)

关于如何解决这个问题,我有点不知所措.还有其他类似的帖子,但唉,我不能让他们的解决方案在我的情况下工作.谢谢.

ruby-on-rails-3 railstutorial.org

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

这些错误消息是什么意思?

我在hartl rails教程的第9节中,这个def没有意义.想法?

1) User pages index 
 Failure/Error: visit users_path
 ActionView::Template::Error:
   wrong number of arguments (2 for 1)
 # ./app/helpers/users_helper.rb:3:in `gravatar_for'
 # ./app/views/users/index.html.erb:7:in `block in _app_views_users_index_html_erb__3004047397113020476_70255017945740'
 # ./app/views/users/index.html.erb:5:in `each'
 # ./app/views/users/index.html.erb:5:in `_app_views_users_index_html_erb__3004047397113020476_70255017945740'
 # ./spec/requests/user_pages_spec.rb:12:in `block (3 levels) in <top (required)>'



2) User pages index should list each user
 Failure/Error: visit users_path
 ActionView::Template::Error:
   wrong number of arguments (2 for 1)
 # ./app/helpers/users_helper.rb:3:in `gravatar_for'
 # ./app/views/users/index.html.erb:7:in `block in _app_views_users_index_html_erb__3004047397113020476_70255017945740'
 # ./app/views/users/index.html.erb:5:in `each'
 # ./app/views/users/index.html.erb:5:in `_app_views_users_index_html_erb__3004047397113020476_70255017945740'
 # ./spec/requests/user_pages_spec.rb:12:in `block (3 levels) in <top (required)>'
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-3 railstutorial.org

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

什么是一些创造性的方法来克服杰基尔默认的"反向时间顺序"列表?

我有一个静态内容网站,我实际上不希望文章以反向时间顺序显示,使用jekyll/liquid,有什么创造性的方法我可以完成这个而不必回复在所有帖子上反向排序日期?

liquid jekyll

3
推荐指数
2
解决办法
1687
查看次数

在哪里找到vim撤消设置以及如何关闭它们?

我在使用vim时遇到了很多麻烦.我在我的〜/ .vimrc中设置了'noundofile'并附加了我工作目录的屏幕截图,所有的.un~文件到处都是超级烦人的.这里有点帮助谢谢!

屏幕截图的目录

下面是我的.vimrc

set nocompatible
exec pathogen#infect()
filetype plugin indent on
filetype plugin on
"syntax enable
syntax on
set background=light
set noundofile
let g:solarized_termtrans = 1
colorscheme solarized
set number
noremap <Up> <NOP>
noremap <Down> <NOP>
noremap <Left> <NOP>
noremap <Right> <NOP>
vnoremap < <gv
vnoremap > >gv
set runtimepath^=~/.vim/bundle/ctrlp.vim
autocmd FileType ruby set ft=ruby.rails
autocmd Filetype ruby setlocal ts=2 sts=2 sw=2
set nobackup      " no backup files
set nowritebackup " only in case you don't want a backup file …
Run Code Online (Sandbox Code Playgroud)

vim

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

使用async.js时如何处理coffeescript中的隐式返回

我想要

testFunction: () ->
  console.log "testFunction"
  async.series(
    (->
      console.log "first"
    ),
    (-> 
      console.log "second"
    )
  )
Run Code Online (Sandbox Code Playgroud)

我也试过没有成功

testFunction: () ->
  console.log "testFunction"
  async.series(
    (->
      console.log "first"
      return undefined
    ),
    (-> 
      console.log "second"
      return undefined
    )
  )
Run Code Online (Sandbox Code Playgroud)

要运行,我希望控制台输出"testFunction","first","second",但我得到"testFunction","second",看起来coffeescript使用隐式返回有问题,(我想).

附件是从上面的coffeescript编译的javascript输出的屏幕截图.

在此输入图像描述

coffeescript async.js

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

为什么不能正确选择2个事件?

鉴于以下coffeescript

class ModalController
  constructor: (modalClass) ->
    @modalClass = modalClass
    @enableSelect2()
    @clearSelectOptions()

  enableSelect2: () ->
    $('.select2-init').select2()
      .on 'select2-open', (e) ->
        console.log e
      .on 'select2:selecting', (e) =>
        console.log 'added'
        @validatePresenceOf($(e.target))
Run Code Online (Sandbox Code Playgroud)

我希望当我选择上面的代码时,特别是线路调用.on 'select2:selecting应该触发,这不是原因,如下面的代码片段所示.

https://cl.ly/image/2P3d3F0y3k1o/Screen%20Recording%202015-04-03%20at%2010.38%20AM.gif

我基于select2文档对此有所了解

https://cl.ly/image/2Z3k0q2b2H1V/Image%202015-04-03%20at%2010.40.37%20AM.png

怎么解决这个?

在事件选择中可能会出错

以下coffeescript

  enableSelect2: () ->
    $('.select2-init').select2()
      .on 'change', (event) =>
        if event.added
          @validatePresenceOf($(event.target))
      .on 'select2:selecting', (e) =>
        console.log "selecting"
      .on 'select2:select', (e) =>
        console.log "select"
      .on 'select2-removed', (e) =>
        @validatePresenceOf($(e.target))
Run Code Online (Sandbox Code Playgroud)

产生以下内容,请注意没有日志声明(虽然我已经通过使用event.added支票破解了我正在寻找的验证.

https://cl.ly/image/1l3Y3h1a1e2t/Image%202015-04-03%20at%2011.05.41%20AM.png

模式select2:eventname没有做任何事情,即没有记录,没有钩子.这很奇怪.我select2-eventname在互联网上找到的随机网站上找到了这种模式.这对我来说是非常奇怪和令人不安的,这看起来像是一个简单的代码.

jquery-select2

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