首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态选择与祖先

动态选择与祖先
EN

Stack Overflow用户
提问于 2014-07-20 23:09:18
回答 2查看 1K关注 0票数 2

我的应用程序使用祖先宝石。

代码语言:javascript
复制
class Location < ActiveRecord::Base
 has_ancestry :cache_depth => true
 has_many :posts
end

class User < ActiveRecord::Base
 belongs_to :location
end

我创造了一些随机地点,

  • 阿拉斯加
  • 加利福尼亚
    • 洛杉矶
    • 弗雷斯诺
      • 辛科塔(弗雷斯诺)
      • 哈蒙德(弗雷斯诺)
      • 梅尔文(弗雷斯诺)

我的问题如果用户注册表单如果用户选择加利福尼亚,显示儿童洛杉矶和弗雷斯诺,然后选择弗雷斯诺然后显示它的孩子。

我得到了下拉列表教程/下拉列表-demo.php的javascript教程

如何使用祖先宝石进行工作

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-21 08:40:02

嵌套

首先,如果您希望将它们都保存在一个dropdown中,那么我们创建了以下帮助程序来实现它:

代码语言:javascript
复制
#app/helpers/application_helper.rb
def nested_dropdown(items)
    result = []
    items.map do |item, sub_items|
        result << [('- ' * item.depth) + item.name, item.id]
        result += nested_dropdown(sub_items) unless sub_items.blank?
    end
    result
end

这样你就可以打电话:

代码语言:javascript
复制
<%= f.select(:category_ids, nested_dropdown(Category.all.arrange), prompt: "Category", selected: @category ) %>

这将使您能够调用单个下拉列表,这是根据您的祖先关联嵌套的。

--

Ajax

如果您想要有双下拉框,您可能需要实现一个ajax函数来在每次初始下拉列表更改时提取所需的数据:

代码语言:javascript
复制
#config/routes.rb
resources :categories do
    get :select_item
end

#app/assets/javascripts/application.js
$("#first_dropdown").on("change", function(){
   $.ajax({
       url: "categories/"+ $(this).val() + "/select_item",
       dataType: "json",
       success: function(data) {
          //populate second dropdown
       }
   })
});

#app/controllers/categories_controller.rb
Class CategoriesController < ApplicationController
    respond_to :json, only: :select_item

    def select_item
       category = @category.find params[:category_id]
       respond_with category.children
    end
end
票数 2
EN

Stack Overflow用户

发布于 2014-07-20 23:58:45

我无法理解你的问题,但试着遵循本教程:

http://railscasts.com/episodes/262-trees-with-ancestry

我看了一次,当需要与祖先宝石工作时。

希望它能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24855785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档