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)是两个不同的操作请返回顶部,以放入良好的代码格式,以保存每个人的眼睛=)抱歉,您的路线中是否有配置文件成员(或匹配、范围等)?这是配置文件/附加详细信息
工作路线所必需的。简单导航不为您处理路由。