小编Ban*_*ank的帖子

在自定义的ActiveAdmin显示页面上显示注释框

我正在使用ActiveAdmin.默认情况下,评论框将显示在显示页面的底部,但在我自定义后,评论框块会消失.

ActiveAdmin.register Book do
  scope :all, :default => true
  scope :publish

  show do
    attributes_table :name, :description, :owner, :company, :publish, :publisher
  end 
end
Run Code Online (Sandbox Code Playgroud)

如何将评论框添加回节目页面?

ruby-on-rails

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

如何使用rspec测试具有嵌套路由的控制器

我用InherritedResource创建控制器

class AppsController < InheritedResources::Base
  belongs_to :company

  # Devise
  before_filter :login_or_oauth_required
  # CanCan
  load_and_authorize_resource
end
Run Code Online (Sandbox Code Playgroud)

并尝试使用此方法使用Rspec进行测试

require "spec_helper"

include Devise::TestHelpers

describe AppsController do
  before(:each) do
    @company_1 = Factory.build(:company)
    application_1 = Factory.create(:application, :company => @company_1)
    application_2 = Factory.create(:application, :company => @company_1)
    application_3  = Factory.create(:application, :company => @company_1)    
    @company_2 = Factory.build(:company)

    @user_1   = Factory.create(:user)
    role_1    = Factory.create(:publisher_role, :company => @company_1) 
    profile_1 = Factory.create(:profile, :company => @company_1, :user => @user_1, :roles => [role_1])
  end

  describe "index action" do
    it "user_1 should have 3 …
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails

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

删除空(零字节)文件

仅使用Mac OS X原生工具查找和删除空(零字节)文件的最简单/最佳方法是什么?

command-line file batch-file

7
推荐指数
2
解决办法
8918
查看次数

如何将值表单输入选择绑定到控制器中的属性

我尝试将输入select的值绑定到控制器中的属性"selectedValue".

这是app.js.

Food = Ember.Application.create();

Food.appsController = Ember.Object.create({
  selectedValue: ""
});

Food.Todo = Ember.Object.extend({
  title: null,
  value: null
});

Food.FoodController = Ember.ArrayProxy.create({
  content: []
});

Food.FoodController.pushObject(Food.Todo.create({title:"a", value:"1"}));
Food.FoodController.pushObject(Food.Todo.create({title:"b", value:"2"}));
Food.FoodController.pushObject(Food.Todo.create({title:"c", value:"3"}));
Run Code Online (Sandbox Code Playgroud)

这是index.html

{{#collection
    contentBinding="Todos.todosController"
    tagName="select"
    itemClassBinding="content.isDone"}}
  {{content.title}}
{{/collection}}
Run Code Online (Sandbox Code Playgroud)

输出看起来像这样

<select id="ember180" class="ember-view">
  <option id="ember192" class="ember-view">
    <script id="metamorph-0-start" type="text/x-placeholder"></script>
    a
    <script id="metamorph-0-end" type="text/x-placeholder"></script>
  </option>
  <option id="ember196" class="ember-view">
    <script id="metamorph-1-start" type="text/x-placeholder"></script>
    b
    <script id="metamorph-1-end" type="text/x-placeholder"></script>
  </option>
  <option id="ember200" class="ember-view">
    <script id="metamorph-2-start" type="text/x-placeholder"></script>
    c
    <script id="metamorph-2-end" type="text/x-placeholder"></script>
  </option>
</select>
Run Code Online (Sandbox Code Playgroud)

我不知道如何为选项添加值以及如何将所选值绑定回控制器.这可以在Emberjs做吗?

ember.js

7
推荐指数
2
解决办法
2万
查看次数

如何在rails中运行测试时保留数据

每次我跑测试.Rails将从表中删除我的数据.我的表中有数百万的记录用于测试搜索性能和纠正.我每次运行测试时都无法添加数据.

当我运行测试时,如何告诉rails"请不要删除此表中的数据".

PS.

我找到了这个链接

如何在不丢弃DB内容的情况下运行Rails集成测试?

这可能与我的问题有关,但我不知道将他的代码放在我的rails项目中.

testing ruby-on-rails

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

如何使用反斜杠gsub斜杠"/"并在ruby中斜杠"\ /"

我尝试通过ruby gsub命令修改"/foo/bar/dir""\/foo\/bar\/dir".

我在irb中测试它的结果是

x = "/foo/bar/dir"

x.gsub("/","\/")

=> "/foo/bar/dir"

x.gsub("/","\\/")

=> "\\/foo\\/bar\\/dir"
Run Code Online (Sandbox Code Playgroud)

是否可以用gsub将"/"替换为"/"?


问题来源:

我尝试执行"string in command line","real_path"是我的变量

real_path = "/home/me/www/idata"

path = real_path.gsub("/","\\/")

=> \\/home\\/me\\/www\\/idata 

# But what I expect is \/home\/me\/www\/idata

run "sed 's/SHARE_PATH/#{path}/g' #{path}/config/sphinx.yml > #{path}/config/sphinx.tmp.yml"
Run Code Online (Sandbox Code Playgroud)

"run"命令的结果是

"sh -c 'sed '\''s/SHARE_PATH/\\/home\\/me\\/www\\/idata\\/shared/g .... "
Run Code Online (Sandbox Code Playgroud)

我需要的只是一个反斜杠

"sh -c 'sed '\''s/SHARE_PATH/\/home\/me\/www\/idata\/shared/g .... "
Run Code Online (Sandbox Code Playgroud)

"跑"是卡皮斯特拉诺的命令

我的解决方案是

使用单引号而不是像这样的双引号

path = real_path.gsub("/",'\/') 
Run Code Online (Sandbox Code Playgroud)

ruby gsub

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

如何在Twitter bootstrap下拉菜单中使用Sproutcore 2.0

我使用twitter-bootstrap创建顶部菜单,它工作正常

.topbar
  .topbar-inner
    .container-fluid
      {{#view Mediawrap.menuView id="menuView"}}
      = link_to 'Mediawrap', root_path, {:class=>"brand"}
      %ul.nav
        %li.menu
          = link_to 'Search', "#", {:class=>"menu"}
          %ul.menu-dropdown
            %li
              = link_to "Hide date search", "#"
            %li
              = link_to "Hide index search", "#"
            %li
              = link_to "Hide advance search", "#"
            %li
              = link_to "Clear search", "#"
            %li.divider
            %li
              = link_to 'Save to new folder ...', "#"
            %li
              = link_to 'Replace a folder', "#"
      {{/view}}
Run Code Online (Sandbox Code Playgroud)

直到我尝试将Sproutcore添加到页面.我的下拉列表停止工作了.我认为这是因为"$(document).ready(function()"在Sproutcore生成HTML标记之前调用.

$(document).ready(function() {
  alert("bank");
  $(".topbar").dropdown();
});
Run Code Online (Sandbox Code Playgroud)

在sproutcore完成生成HTML标记后,如何在document.ready中调用命令

twitter-bootstrap sproutcore-2 ember.js

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

如何在视图完成渲染更改后运行函数

可能重复:
使用Ember.js,如何在渲染视图后运行一些js?

我使用JWPlayer在我的网站上显示视频,JWPlayer使用javascript创建查看器.

我的隐藏视图更改显示后,我必须运行JWPlayer脚本.

jwplayer('video_space').setup({
    'flashplayer': 'player.swf',
    'file': 'http://content.longtailvideo.com/videos/flvplayer.flv',
    'controlbar': 'bottom',
    'width': '470',
    'height': '320'
  });
Run Code Online (Sandbox Code Playgroud)

我将我的视图与控制器上的值绑定

<script type="text/x-handlebars" >
  {{#view Food.previewView }}
    Video session
    <div {{bindAttr class="showPreview"}}>
        <div id='video_space'>Video Loading...</div>
    </div>
    {{#view SC.Button target="Food.appController" action="show"}}
        show
    {{/view}} 
  {{/view}}
</script>
Run Code Online (Sandbox Code Playgroud)

我的javascript为所有控制器和视图

Food = Ember.Application.create();

Food.appController = Ember.Object.create({
    showVideo: false,

    show: function(){
        Food.previewView.set('showVideo', true);
    }
});

Food.previewView = Ember.View.extend({
    showVideoBinding: 'Food.appController.showVideo',

    showPreview: function() {
        return this.get('showVideo') ? "show" : "hide";
    }.property('showVideo')
});
Run Code Online (Sandbox Code Playgroud)

如果我在更改"showVideo"变量时运行JWPlayer脚本,视频将会出错,因为$('#video_space')仍然是隐藏的.

Emberjs有一些委托方法,如"afterViewChange"或"viewDidChange"?

测试代码 http://jsfiddle.net/apirak/Ay6Fh/

ember.js

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