小编Ari*_*n L的帖子

ruby如何生成树形结构表单数组?

我有一个数组,其中包含这样的项目列表

arr = [
  {:id=>1,  :title=>"A",      :parent_id=>nil}, 
  {:id=>2,  :title=>"B",      :parent_id=>nil},
  {:id=>3,  :title=>"A1",     :parent_id=>1}, 
  {:id=>4,  :title=>"A2",     :parent_id=>1},
  {:id=>5,  :title=>"A11",    :parent_id=>3}, 
  {:id=>6,  :title=>"12",     :parent_id=>3},
  {:id=>7,  :title=>"A2=121", :parent_id=>6}, 
  {:id=>8,  :title=>"A21",    :parent_id=>4},
  {:id=>9,  :title=>"B11",    :parent_id=>2}, 
  {:id=>10, :title=>"B12",    :parent_id=>2},
   ...
]
Run Code Online (Sandbox Code Playgroud)

如果parent_id是,nil那么它应该是父节点,如果parent_id不是nil那么它应该在特定父节点下.

基于idparent_id,我想提供这样的回复:

-A
  -A1
    -A11
    -A12
      -A123
  -A2
    -A21
-B
  -B1
    -B11
    -B12
Run Code Online (Sandbox Code Playgroud)

我怎么能产生上面提到的回应?

谢谢

ruby arrays algorithm tree performance

9
推荐指数
3
解决办法
5788
查看次数

没有此类文件要加载-ap(LoadError)

当我尝试任何 railsrake在临时服务器我得到了命令no such file to load -- ap (LoadError)

对于 rails s

/usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/runtime.rb:68:in`require': no such file to load -- ap (LoadError)    
 xxxx    
/config/application.rb:7
Run Code Online (Sandbox Code Playgroud)

对于 rake -T

rake aborted!
no such file to load -- ap
Run Code Online (Sandbox Code Playgroud)

我的 application.rb档案:

require File.expand_path('../boot', __FILE__)

require 'rails/all'

# If you have a Gemfile, require the gems listed there, including any gems
# you've limited to :test, :development, or :production. 

Bundler.require(:default, Rails.env) if defined?(Bundler)
Run Code Online (Sandbox Code Playgroud)

我的rails和ruby版本:

  • 本地和暂存中的rails版本:3.0.11
  • 分期中的ruby版本:ruby 1.8.7(2012-02-08 …

ruby ruby-on-rails ruby-on-rails-3

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

rails应用程序不会在生产环境中加载css/js/images

当我在生产模式下运行我的rails应用程序时,图像不会显示而css在我的控制台中无法正常工作我收到消息 ActionController :: RoutingError(没有路由匹配"/stylesheets/theme.css"):呈现C:/ Ruby192/lib /ruby/gems/1.9.1/gems/actionpack-3.0.3/lib/action_dispatch/middleware/templates/rescues/routing_error.erb救援/布局(0.0ms) 但在我的视图/布局application.html.erb我包含行<%= stylesheet_link_tag'主题'%>,theme.css出现在public/stylesheet文件夹中

css production-environment ruby-on-rails-3

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

显示多个ajax请求的加载对话框

我异步进行两个ajax调用,在每个调用中,我都显示一个这样的加载对话框,

jQuery('#msg_writter').show();
Run Code Online (Sandbox Code Playgroud)

在每个请求成功后,我将隐藏这样的加载对话框,

jQuery('#msg_writter').fadeOut(1000);
Run Code Online (Sandbox Code Playgroud)

我的HTML载入对话框代码:

<div id="msg_writter" class="msgWritter">    
     <img src="/images/loading.gif"/>
</div>
Run Code Online (Sandbox Code Playgroud)

当第一个请求完成时,加载对话框消失,因此第二个请求的加载对话框不显示。

我如何修改代码以显示从第一个请求到最后一个请求成功的加载对话框。

javascript ajax jquery

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