Rails 另外命名資料表名稱的方法

若要在 Ruby on Rails 在己存在的資料庫上重新建立 UI ,並且原資料結構與資料都必需保留。但MySQL對於資料欄位名稱的大小寫非常的敏感。

因此若在Rails上命名model之後:

rails即報錯,資訊如下:

[cc lang=”ruby”]
irb(main):006:0> Tickets.first
Mysql2::Error: Table ‘rt3.tickets’ doesn’t exist: SHOW FIELDS FROM `tickets`
ActiveRecord::StatementInvalid: Mysql2::Error: Table ‘rt3.tickets’ doesn’t exist: SHOW FIELDS FROM `tickets`
[/cc]

Rails指出的錯誤是因為 tickets 字首變小寫了,所以MySQL就找不到資料表。

那麼,若以後要改寫UI不就很沒有彈性?

是的,我找不到那個方法前是非常的躁鬱的 ★゜+.ヽ(*。>Д<)o゜+.゜☆ 好佳在有前輩可以指引光明,因此前輩指出了一個方法,那就是: [cc lang="ruby"]set_table_name[/cc] 然後在這個地方放進這個方法: [cc lang="ruby"] class Tickets < ActiveRecord::Base set_table_name "Tickets" end [/cc] 結果: [cc lang="ruby"] Loading development environment (Rails 3.1.0) irb(main):001:0> Tickets.count
(2.8ms) SELECT COUNT(*) FROM `Tickets`
=> 8035
[/cc]

Rails的世界因此變的美好了 〜♡ヽ(●´ε`●)ノ♡

相關連結:
http://apidock.com/rails/ActiveRecord/Base/set_table_name/class

http://apidock.com/rails/Module/alias_attribute

Mongo DB 工程師的香蕉芒果

這個標題的梗請參照這個連結,俺就不用多說。工程師平日忙於工作與電腦會很少三餐均衡,為了要提醒我們多吃水果,所以,不知道梗是啥的英文語系國家就偏偏把這個水果代號附加上自家的產品(例:微軟的智慧手機 Windows Phone Mango 7 )。芒果的英文叫做 Mango 而日文叫做 マンコ (日文意思請參考這個連結),所以這個 MongoDB 的取名應該是故意的吧!!XD

Mongo DB 是個目前所NoSQL大推的文檔式資料庫也是非關聯式的資料庫,為何需要用到文檔式的資料庫?跟關聯式的資料庫又是有什麼差別?

非關聯資料庫的出現不是為了取代關聯資料庫。具體的說,MongoDB 並不支援複雜的事務,只支援少量的原子操作,所以不適用於“轉帳”等對事務和一致性要求很高的場合。所以純粹是只做成消息發佈、留言板、計數器這一類的App就不必使用MySQL那樣大材小用。

Ubuntu的t安裝方式可以參考這裡

安裝過程很簡單,完成之後下指令mongo即可進入shell模式跟它玩玩。
[cc lang=”bash”]
$ mongo
MongoDB shell version: 1.8.2
connecting to: test
[/cc]
Continue reading Mongo DB 工程師的香蕉芒果

apache的相關指令

在ubuntu上apache的一些停止與啟動的指令跟freebsd不太一樣

啟動指令:
[cc lang=”bash”]/etc/init.d/apache2 start[/cc]

停止指令:
[cc lang=”bash”]/etc/init.d/apache2 stop[/cc]

套用已修改的指令:
[cc lang=”bash”]/usr/sbin/apache2ctl graceful[/cc]

另外要啟用Rails的開發環境

啟用webrick(必需要進入目前正在開發的rails目錄下)
[cc lang=”bash”]script/server[/cc]

停止webrick
Ctrl + C

下指令停止webrick(該terminal視窗已經不見,或是背景執行)
[cc lang=”bash”]pgrep ruby
kill -KILL id[/cc]

關於Rails 一些教學文章

Rails是一套ruby的framework,也是專門設計web form應用程式網站的工具。

過去在用PHP開發網站時,大都是將PHP的mod建立於apache上,由apache專職來對request的資料再由php mod直譯,將運算結果呈現在web browser 。

Ruby是個語言與跟PHP是相同的地位。

而Rails是個Framework 與PHPCake是相同的地位。但以自已的觀念來explane又很接近IDE開發環境,如Dreamweaver或Eclips。

所以在了解Ruby的語法之後,就必需用Rails來試著開發一個可以連結資料庫的專案。

講這麼多,先bookmark一個網站,才不會又從頭找起。

F"筆記
http://www.wretch.cc/blog/myrecord/22015285

剛剛才發現那是以XP為平台 Orz