鷹翔宇空

          學(xué)習(xí)和生活

          BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
            110 Posts :: 141 Stories :: 315 Comments :: 1 Trackbacks
          這兩天不是很忙,非常不錯(cuò),很是開(kāi)心,終于可以有點(diǎn)自己的空閑時(shí)間了。不過(guò)之所以所以學(xué)習(xí)ruby,還是因?yàn)榫W(wǎng)上傳得太火爆了,大有新一輪技術(shù)革命的感覺(jué)。
          首先從網(wǎng)上找到了一篇ruby on rails實(shí)戰(zhàn),按部就班的演習(xí)一遍,發(fā)現(xiàn)果然是如此的簡(jiǎn)單易用,開(kāi)發(fā)一個(gè)CRUD竟是如此的容易,對(duì)于我這個(gè)從事J2EE多年的編程人員來(lái)說(shuō),感觸到的不僅僅是驚喜。那篇文章中有幾處小bug,但是很容易的就被我調(diào)試好了,雖然我還并沒(méi)有太熟悉ruby on rails或是ruby(以前也曾看過(guò)ruby語(yǔ)法,但API看的非常少),這樣說(shuō)明了它的簡(jiǎn)單易用性。以前看到一些評(píng)論說(shuō),它的開(kāi)發(fā)效率是java的十倍,當(dāng)時(shí)曾經(jīng)嗤之以鼻,但現(xiàn)在感覺(jué)話雖有些夸張,但效率還是很驚人的。
          現(xiàn)在把我碰到的一個(gè)問(wèn)題簡(jiǎn)單寫出來(lái),以防以后查用:
          在使用ruby命令時(shí),如果使用ruby script\generate controller book簡(jiǎn)單的創(chuàng)建controller 骨架文件book_controller.rb,我們會(huì)發(fā)現(xiàn),除了這個(gè).rb文件外我們并沒(méi)有生成其它文件,除了app\views\book這個(gè)空的文件夾外。然后當(dāng)我們的程序運(yùn)行下來(lái)后,發(fā)現(xiàn)頁(yè)面上沒(méi)有任何的樣式,\public\stylesheets下也是空空如也,這時(shí),我們可能要修改一些自己的東西,需要在book_controller.rb中新添加一些方法,要手工添加一些相應(yīng)的.rhtml文件,按照說(shuō)明我們?cè)趐ublic\stylesheets下加入scaffold.css樣式表,但是發(fā)現(xiàn)沒(méi)有任何效果,這是因?yàn)?rhtml中的樣式?jīng)]有找到樣式表,我們需要手工添加,例如:
          <head>
          <link href="/stylesheets/scaffold.css" media="screen" rel="Stylesheet" type="text/css" />
          <title>All books</title>
          </head>
          這樣就可以自己指定樣式表的位置。
          當(dāng)然,ruby on rails可以為我們做更多,我們可以使用ruby?script/generate?scaffold?book來(lái)生成完整的框架,包括.rhtml和\public\stylesheets\scaffold.css.這時(shí)候我們會(huì)發(fā)現(xiàn)app\views下生成的文件夾名為books,這可能是因?yàn)槲矣玫搅吮碇g的一對(duì)多關(guān)聯(lián),它就自動(dòng)建立了復(fù)數(shù)的文件夾名,但是數(shù)據(jù)庫(kù)中的表名還是單數(shù)的,這個(gè)并沒(méi)有發(fā)生變化。(之所以這樣認(rèn)為,是因?yàn)楫?dāng)我沒(méi)有指明表之間的一對(duì)多關(guān)系時(shí),生成的都是單數(shù)文件夾名,如book,當(dāng)我指明后則生成了books,還沒(méi)有深入了解,目前只是猜想) 。
          app\views\books下會(huì)自動(dòng)生成一套CRUD的.rhtml頁(yè)面,還有一個(gè)_form.rhtml,在app\views下還會(huì)生成一個(gè)layouts文件夾,下面有一個(gè)books.rhtml頁(yè)面文件,打開(kāi)后會(huì)發(fā)現(xiàn),里面的代碼類似于一個(gè)頁(yè)面模版,而其它app\views\books的CRUD的.rhtml頁(yè)面上就是一些簡(jiǎn)單的函數(shù)和方法,其實(shí),在顯示時(shí)他們確實(shí)是調(diào)用books.rhtml的模版的,也可以看到,在books.rhtml中已經(jīng)加載了scaffold.css,就是這一句了<%= stylesheet_link_tag 'scaffold' %>。就這么簡(jiǎn)單。
          其實(shí)ruby on rails還是有非常多的東西要學(xué)習(xí)的,雖然很簡(jiǎn)單,但是要想非常好的使用還得下一番苦功夫。暫時(shí)到這里吧,希望和大家多多交流學(xué)習(xí)使用ruby on rails的新的體會(huì)。
          posted on 2006-09-24 10:35 TrampEagle 閱讀(740) 評(píng)論(0)  編輯  收藏 所屬分類: 學(xué)習(xí)體會(huì)
          主站蜘蛛池模板: 桦南县| 田东县| 田林县| 科技| 乐山市| 喀喇沁旗| 抚州市| 宁阳县| 石屏县| 吴川市| 柳州市| 龙海市| 肇源县| 湾仔区| 丰宁| 安平县| 聂荣县| 英山县| 扬中市| 高清| 永兴县| 虎林市| 嘉禾县| 铁力市| 兴文县| 镇雄县| 宁国市| 新丰县| 玛沁县| 临沭县| 灌阳县| 尖扎县| 读书| 九龙城区| 固阳县| 泗水县| 汉寿县| 尤溪县| 余姚市| 赤峰市| 昌吉市|