仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 563|回复: 9
打印 上一主题 下一主题

[学习教程] 发布一篇Ruby on Rails导航菜单主动天生的办法

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:04:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
首先第一点:jsp,servlet,javabean这些最基本的,嘿嘿,就算你是高手的话,在大行的企业级应用的话还是需要框架的,一个好的框架确实能构解决许多问题。
比来在做的一个ROR的web项目中碰到以下成绩:
产物能够按类分类导航扫瞄,次要能够分为A,B,C三类,三类之下另有其他分类,同时,基类和其下的分类都能够由用户扩大。从横向上,主类能够由用户扩大,纵向上,用户也能够扩大。
种别信息存储与categories表中:
id:integer        主键
name:string       种别称号
parentid:integer  种别的父类
请求:
天生导航菜单,而且能够含有子类的菜单能够经由过程点击睁开或封闭,而且能够按种别导航产物。
完成RubyonRails导航菜单:
经由过程深度优先遍向来天生菜单,在便当过程当中构建菜单的html编码,次要是利用了一个@htmlmenu的string来拼接天生的html代码,终极显现在页面中。
RubyonRails导航菜单代码:
  1. def index  
  2.     @htmlmenu="" 
  3.     @htmlmenu+= "< ul>" 
  4.     @root = Category.find(:all,:conditions=>[parentid=0])  
  5.     @root.each { |item|  
  6.     if Category.find_by_parentid(item.id)  
  7.     @htmlmenu+= "< li>< a href=#ChildMenu#{item.id} onclick="DoMenu
  8. (ChildMenu#{item.id})">" 
  9.     else 
  10.       @htmlmenu+= "< li>< a href=/categories/#{item.id}>" 
  11.     end 
  12.     @htmlmenu+= item.name  
  13.     @htmlmenu+= "< /a>" 
  14.     buildmenu item  
  15.     @htmlmenu+= "< /li>" 
  16.     }  
  17.     @htmlmenu+= "< /ul>" 
  18.   end 
  19.   private  
  20.   def buildmenu category  
  21.     @children = Category.find_all_by_parentid(category.id)  
  22.     if @children.size!=0  
  23.       @htmlmenu+= "< ul id=ChildMenu#{category.id} class=collapsed>" 
  24.       @children.each { |item|  
  25.         if Category.find_all_by_parentid(item.id).size!=0  
  26.           @htmlmenu+= "< li>< a href=#ChildMenu#{item.id} 
  27. onclick="DoMenu(ChildMenu#{item.id})">" 
  28.         else 
  29.                 @htmlmenu+= "< li>< a href=/categories/#
  30. {item.id}>" 
  31.         end 
  32.  
  33.         @htmlmenu+= item.name  
  34.         @htmlmenu+= "< /a>" 
  35.         buildmenu item  
  36.         @htmlmenu+= "< /li>" 
  37.         }  
  38.       @htmlmenu+= "< /ul>" 
  39.     end 
  40.   end
复制代码
<p>
再说说缺点:首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-1-20 13:46:11 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
只想知道 该用户已被删除
板凳
发表于 2015-1-22 05:59:14 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
小女巫 该用户已被删除
地板
发表于 2015-1-25 14:36:16 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
柔情似水 该用户已被删除
5#
发表于 2015-2-2 22:29:03 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
6#
发表于 2015-2-8 14:42:07 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
透明 该用户已被删除
7#
发表于 2015-2-25 18:44:22 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
山那边是海 该用户已被删除
8#
发表于 2015-3-8 00:55:06 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
变相怪杰 该用户已被删除
9#
发表于 2015-3-15 18:25:24 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
愤怒的大鸟 该用户已被删除
10#
发表于 2015-3-22 02:56:19 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 01:23

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表