小编jan*_*oeh的帖子

rails new <app>或rails -h craps out with无法加载这样的文件 - io/console

[ec2-user@ip-XX-XXX-XXX-XXX rails]$ rails -h
/usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- io/console (LoadError)
    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/share/ruby/gems/2.0/gems/thor-0.19.1/lib/thor/shell/basic.rb:2:in `<top (required)>'
    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/share/ruby/gems/2.0/gems/thor-0.19.1/lib/thor/shell/color.rb:1:in `<top (required)>'
    from /usr/local/share/ruby/gems/2.0/gems/thor-0.19.1/lib/thor/shell.rb:17:in `shell'
    from /usr/local/share/ruby/gems/2.0/gems/thor-0.19.1/lib/thor/base.rb:439:in `start'
    from /usr/local/share/ruby/gems/2.0/gems/railties-4.1.0/lib/rails/commands/application.rb:17:in `<top (required)>'
    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/share/ruby/gems/2.0/gems/railties-4.1.0/lib/rails/cli.rb:14:in `<top (required)>'
    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/share/ruby/gems/2.0/gems/railties-4.1.0/bin/rails:9:in `<top (required)>'
    from /usr/local/bin/rails:23:in `load'
    from /usr/local/bin/rails:23:in `<main>'
Run Code Online (Sandbox Code Playgroud)

我使用$ gem install rails安装了Ruby on Rails,它也完成了.我用$ echo $检查过程状态?它意味着成功.

有趣的是,这两个命令工作正常:

$ which rails
/usr/local/bin/rails

$ …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

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

flex-basis:Webkit/Blink忽略内在的宽高比

给定一个flex容器

figure {
  display: flex;
  align-items: flex-start;
}
Run Code Online (Sandbox Code Playgroud)

和一个300x300的图像,其flex-basis设置为其固有宽度的一半:

figure img {
  flex: 0 0 150px;
}
Run Code Online (Sandbox Code Playgroud)

Chrome 41和Safari 7忽略宽高比并将其显示为150px x 300px:

在此输入图像描述

另一方面,Firefox 35保持内在宽高比不变:

在此输入图像描述

figure {
  display: -webkit-box;
  display: -moz-box;
  display: box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -moz-box-align: start;
  box-align: start;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -o-align-items: flex-start;
  align-items: flex-start;
  -ms-flex-align: start;
  
  width: 100%;
  border: 1px solid black;
}

figure img {
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  -webkit-flex: 0 0 150px;
  -moz-flex: 0 …
Run Code Online (Sandbox Code Playgroud)

css css3 flexbox

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

调试显示模块模式:在调用之前,函数不在范围内?

如果我在Chrome开发者工具中运行此代码:

var test = (function () {

  var publicFunction,
      privateFunction1,
      privateFunction2;

  privateFunction1 = function privateFunction1() {
    return true;
  };

  privateFunction2 = function privateFunction2() {
    return true;
  };

  publicFunction = function publicFunction() {
    privateFunction1();
    debugger;
  };

  return {
    publicFunction: publicFunction
  };
})();
Run Code Online (Sandbox Code Playgroud)

为什么privateFunction1在断点范围内,而privateFunction2不是?

Chrome Dev Tools的屏幕截图

javascript closures scope google-chrome-devtools

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

在Rails 4中为URL Helpers设置默认命名空间?

我有一个Rails 4应用程序,其中所有控制器和视图分为两个名称空间,面向代理和面向backend客户frontend:

MyApp::Application.routes.draw do
  constraints subdomain: "admin" do
    namespace :backend do
      resources :events
    end
  end

  constraints subdomain: /.+/ do                
    namespace :frontend do
      resources :events
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

此外,所有控制器都继承自BackendControllerFrontendController:

controllers
??? application_controller.rb
??? backend
?   ??? events_controller.rb
??? backend_controller.rb
??? frontend
?   ??? events_controller.rb
??? frontend_controller.rb
Run Code Online (Sandbox Code Playgroud)

现在,需要生成路径的所有内容都必须以命名空间为前缀,例如respond_with [:backend, @event]form_for [:backend, @event].

有没有办法为每个控制器的URL助手设置默认命名空间,以便respond_with @event从继承自BackendController的控制器调用自动假定正确的命名空间?

ruby-on-rails rails-routing ruby-on-rails-4

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

在jQuery对话框中敲除'with'binding和select2

问题:

当在嵌套在使用knockout with数据绑定的元素下的jQuery对话框上使用时,select2 jQuery插件不起作用.删除with绑定,select2工作正常.如果with绑定到嵌套属性,则它将停止工作.

背景:

因此,我必须在3小时内努力争取让select2在jQuery对话框表单上工作....讨论关于这个谚语错误树的问题,我认为它纯粹是jQuery对话框和select2.它可能从一开始就_allowInteraction修复了.直到我把问题直接解决为简单的步骤,并且因为开始显露自己.问题在于with绑定.

放弃

当我为阻止jsFiddle的asinine公司工作时道歉.此外,由于实际模型非常大,我为了说明目的而细分了我的实现.

// models

function Department() {
  this.name         = ko.observable('dept1');
  this.selectedTeam = ko.observable( new Team() );
}
    
function Team() {
  this.name = ko.observable('team1');
}
    
function MainModel() {
  this.department = new Department();
  this.showTeam   = function() { 
    $('#addTeamDialog').dialog('open');
  };
}

// setup

ko.applyBindings( new MainModel() );
    	
$('#addTeamDialog').dialog({
  // fix allow select2 to work on the jq dialog
  _allowInteraction: function (event) {
    return !!$(event.target).is(".select2-input") || this._super(event);
  }		
}); …
Run Code Online (Sandbox Code Playgroud)

jquery binding jquery-dialog knockout.js jquery-select2

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

Knockout 3.2:组件/自定义元素可以包含子内容吗?

我可以创建在其中使用子标记的非空Knockout组件吗?

一个示例是用于显示模式对话框的组件,例如:

<modal-dialog>
  <h1>Are you sure you want to quit?</h1>
  <p>All unsaved changes will be lost</p>
</modal-dialog>
Run Code Online (Sandbox Code Playgroud)

其中与组件模板一起:

<div class="modal">
  <header>
    <button>X</button>
  </header>

  <section>
    <!-- component child content somehow goes here -->
  </section>

  <footer>
    <button>Cancel</button>
    <button>Confirm</button>
  </footer>
</div>
Run Code Online (Sandbox Code Playgroud)

输出:

<div class="modal">
  <header>
    <button>X</button>
  </header>

  <section>
    <h1>Are you sure you want to quit?</h1>
    <p>All unsaved changes will be lost</p>
  </section>

  <footer>
    <button>Cancel</button>
    <button>Confirm</button>
  </footer>
</div>
Run Code Online (Sandbox Code Playgroud)

knockout.js knockout-components

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