Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 简单导航导轨3-主导航和子导航问题_Ruby On Rails_Ruby_Ruby On Rails 3_Ruby On Rails 3.1_Uinavigationbar - Fatal编程技术网

Ruby on rails 简单导航导轨3-主导航和子导航问题

Ruby on rails 简单导航导轨3-主导航和子导航问题,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-3.1,uinavigationbar,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 3.1,Uinavigationbar,我的视图有一个简单的导航: SimpleNavigation::Configuration.run do |navigation| navigation.active_leaf_class = 'active' navigation.items do |primary| primary.item :profile,'Profile', edit_user_path do |profile| profile.item :basic, 'Basic Information

我的视图有一个简单的导航:

SimpleNavigation::Configuration.run do |navigation|
  navigation.active_leaf_class = 'active'
  navigation.items do |primary|
    primary.item :profile,'Profile', edit_user_path do |profile|
      profile.item :basic, 'Basic Information', edit_user_path
      profile.item :additional, 'Addditional Details', additional_details_user_path
      profile.dom_class = 'nav nav-list'
    end
  primary.item :notifications, 'Notifications', notification_preferences_user_path do |notification|
    notification.item :notificatin_preference, 'Notification Preferences', additional_details_user_path
    notification.dom_class = 'nav nav-list'
  end
primary.dom_class='nav nav' 结束 结束

“附加详细信息”是另一种与“编辑”无关的方法,因此当我单击该链接时,它不会突出显示主配置文件链接。我怎样才能把它弄对呢?路由中的我的用户资源如下所示:

resources :users do
  member do
    get :network
    put :peer_tagged_expertise_list
    get :qr_code
    get :qr_code_image
    get :about_you
    get :timeline
    get :network_tagcloud
    get :user_tagcloud
    get :settings
    get :notification_preferences
    get :additional_details
  end
  collection do
    get :test
    get :followers
  end
  resource :networks
end

获得更多信息后的新答案

简单导航中使用的结构化代码不会自动调整路线

为了获得
/users/1/profile/additional_details
,您的路由应该包括user=>profile=>additional details的嵌套

生成时,路径应该类似于
附加详细信息\u用户\u配置文件\u路径
。这解决了URL问题,但我不确定它是否能解决引导程序的突出显示问题

旧答案 对于简单的导航,请使用

navigation.active_leaf_class="active"
设置活动导航项目类别。对于引导,项目应分类为
活动

SimpleNavigation::Configuration.run do |navigation|
  navigation.active_leaf_class = "active" # Added this line
  navigation.items do |primary|
    primary.item :profile,'Profile', edit_user_path do |profile|
      profile.item :basic, 'Basic Information', edit_user_path
      profile.item :additional, 'Addditional Details', additional_details_user_path
      profile.dom_class = 'nav nav-list'
    end
  primary.item :notifications, 'Notifications', notification_preferences_user_path do |notification|
    notification.item :notificatin_preference, 'Notification Preferences', additional_details_user_path
    notification.dom_class = 'nav nav-list'
  end

您正在尝试使用引导,对吗?@daemonsy:Yes Twitter BootStrapI有导航功能。active\u leaf\u class=“active”刚刚没有添加它。我的问题是,附加的详细信息用户路径页面没有突出显示主链接配置文件,因为这是一个完全不同的操作。我能做些什么?如果你想要一个像localhost:3000/en/users/1/profile/additional_details这样的链接,这是嵌套路由的问题?根据我的猜测,一个默认生成的路由(如additional_details_user_path)应该生成一个路由(如
/users/:id/additional_details
)。你能在你的路线上发布更多的代码吗?资源:用户做会员做得到:网络放置:同行\u标记\u专业知识\u列表获取:qr\u代码获取:qr\u代码\u图像获取:相关\u配置文件获取:标记获取:网络\u时间线获取:徽章获取:关于\u你获取:时间线获取:network_tagcloud get:user_tagcloud get:settings get:notification_preferences get:additional_details end这是用户模型的路径,这里additional_details和edit(basic_info)是两个不同的操作请返回顶部,以放入良好的代码格式,以保存每个人的眼睛=)抱歉,您的路线中是否有
配置文件
成员(或匹配、范围等)?这是
配置文件/附加详细信息
工作路线所必需的。简单导航不为您处理路由。