這篇文章講的很清楚:attributes= (ActiveRecord::Base) - APIdock

這樣要繞過 attr_protected 的 column 時就不用一個一個手動指定了。

沒力小僧 發表在 痞客邦 留言(0) 人氣()

1. 使用 Model.increment_counter(counter_name, id):

003:0> User.increment_counter(:hit_counter, 1)
User Update (0.8ms)   UPDATE `users` SET `hit_counter` = COALESCE(`hit_counter`, 0) + 1 WHERE (`id` = 1)

2. 使用 Model.update_counters(id, attribute => ammount)

011:0> User.update_counters(1, :hit_counter => 50)
User Update (0.7ms)   UPDATE `users` SET `hit_counter` = COALESCE(`hit_counter`, 0) + 50 WHERE (`id` = 1)

第1個方法可以單純的做+1動作,第2個方法多了指定要加多少。

另外,Rails 還有一個 instance method: increment,但我其實不建議使用它。因為他不是用 sql 的加法來達成 incrment.

013:0> user = User.first
014:0> user.increment(:hit_counter, 2)
015:0> user.save
User Update (0.2ms)   UPDATE `users` SET `updated_at` = '2009-10-26 04:09:00', `hit_counter` = 163 WHERE `id` = 1

這種方式有可能出現 race condition.

沒力小僧 發表在 痞客邦 留言(0) 人氣()

這裡主要是講 database 使用 mysql 的狀況。

在 Rails 裡,對於 text 的指定只有一種。

而有時我們需要更大的欄位,比方說 medium text, big text。因為有時候,大一點還是比較好。

這時候在 migration 裡的作法有兩種個方式:

第一種是以指定 limit 大小的方式讓 mysql 自行將欄位設定為 medium text (請注意 "content" ):

  1. class CreateArticles < ActiveRecord::Migration
  2.   def self.up
  3.     create_table :articles do |t|
  4.       t.string    :title
  5.       t.text      :content, :limit => 64.kilobytes + 1
  6.       t.timestamps
  7.     end
  8.   end
  9.  
  10.   def self.down
  11.     drop_table :articles
  12.   end
  13. end
  14.  

第二種是在 self.up 後再 exeucte 自行生成你要的欄位:

  1. class CreateArticles < ActiveRecord::Migration
  2.   def self.up
  3.     create_table :articles do |t|
  4.       t.string    :title
  5.       t.timestamps
  6.     end
  7.     execute "ALTER TABLE articles ADD `content` MEDIUMTEXT NOT NULL AFTER `title`"
  8.   end
  9.  
  10.   def self.down
  11.     drop_table :articles
  12.   end
  13. end

沒力小僧 發表在 痞客邦 留言(0) 人氣()

雙子座 ジェミニ PV 影片截圖

這首歌的作曲者是 Dixie ,他的作品我們之前也有介紹過,《Just Be Friend.》

《雙子座》則是他的 Nico 出道作。

而對繪師紙飛行機(グライダー)來說,這是他第一個以 Vocaloid 雙子(鏡音鈴,鏡音蓮)為主角的的PV,之後所作的PV作品也都是以雙子為主角。

很可愛!(重點)

也因為這部作品的關係,之後 Dixie 出的個人專輯《Fragments》,就請紙飛行機擔當專輯的視覺設計。

專輯也很棒喔!

接下來就請看鏡音雙子唱雙子吧

 

沒力小僧 發表在 痞客邦 留言(0) 人氣()

在 Rails 裡對做 CRUD 時,有個方便的實作。

params 表示 form parameters,為 hash 型式 (column => value),這樣子若要把 form 的資料接過來只需要一行。

除了 new 之外,還支援這樣的方式:

方便歸方便,但也衍生了一個問題,那就是使用者的 form 表單裡塞了一些我們不希望被修改的 column 時,這些指令依然會被執行。

比方說帳號欄位,我們通常是不希望被修改的。

於是這時候可以使用 attr_accessible 或 attr_protected 來保護這些欄位

attr_protected :account

這樣在使用 new, attributes=(attributes), update_attributes(attributes) 時,account 欄位會被保護,不被這些 method 改變其值。

而如果我們真的要改變的話,需要自行指定。

以下是 Rails api 給的範例,可以更清楚我在講什麼

沒力小僧 發表在 痞客邦 留言(0) 人氣()

白虎野少女的原曲來自於電影 Paprika
(台灣翻譯為盜夢偵探,改編自筒井康降的SF小說),
平澤進所作。這也是他和今敏的再度合作。
paprika.jpg
這部電影的配音卡司很強喔,仔細看會發現有林原惠,古谷徹,大塚明夫等人。

由於這部電影的主題是夢境,
所以身為片尾曲的白虎野少女的歌曲也充滿的奇幻風格。
而在 Nico 動畫上就有人用 KAITO 重唱一遍,
這一唱就成了 KAITO 經典名曲之一。

這首曲子我曾介紹給友人聽,
聽完後經我說明才驚覺這首歌是由虛擬人聲所唱,
可見上傳者調教 KAITO 聲音的功力實在了不起。

今天要介紹的版本又多了PV(上面的版本只有靜態圖),
而且這個 PV 是由台灣人畫的!繪師名: 紙飛行機,BLOG 人間徒然雜記
 

清爽的畫風與奇幻的歌曲成了絕妙組合,
使得當年還在國軍 online 的我也因此 loop 了數十回...
然後就 Nico 中毒了。(最後還成了付費會員)

紙飛行機還做了許多的 PV,每個 PV 都很可愛好看!
有機會的話還會介紹給大家。

沒力小僧 發表在 痞客邦 留言(1) 人氣()

在 Nico 動畫眾多繪師中,Bravo山田是一個很特殊的存在。
5418829_s.jpg

許多人在畫萌圖的時候他都在畫這類玩意兒。

特長是畫一些沒穿什麼衣服擺著神奇姿勢的男性。

沒力小僧 發表在 痞客邦 留言(0) 人氣()

您累了嗎?聽一首歌吧.....

我是上傳者的母親。
體弱多病的兒子,因為第一次的上傳動畫好像很高興的樣子
請大家務必,務必照顧一下兒子的動畫。

您的一個點擊,可以挽回一條生命!請大家告訴大家吧!(無誤!)

 

NICO字幕組 發表在 痞客邦 留言(0) 人氣()

在 Nico 動畫中常會看到像這樣的標題:アコギで弾いてみた

然後我對 アコギ 一直有點疑惑,想說吉它不是就叫ギター嗎
後來查了一下才知道是アコースティック・ギター(Acoustic Guitar)的簡稱,也就是木吉它的意思。

會特地寫下來的原因是我有很長的時間把アコギ看成アシコキ(紳士連結,慎入)的相關物,真是太對不起木吉它了。

話說此篇內容和影片也是一點關係都沒有,也真是抱歉啊

NICO字幕組 發表在 痞客邦 留言(0) 人氣()

作者commet:

曲名 1.志方あきこ/ロマの娘  2.ICO/Castle in the Mist  3.zabadak/遠い音楽  4.有坂美香/月迷風影  5.猫叉Master/Caring Dance  6.河井英里/シャ・リオン  7.Sound Horizon/エルの絵本【笛吹き男とパレード】  8.Shanachie/King Of The Fairies  9.清浦夏実/旅の途中  10.村井聖夜/Tir na n'Og  11.霜月はるか/精霊祀  12.zabadak/二月の丘  13.kirche/Schwarz Nacht  14.Sound Horizon/辿りつく詩  15.猫叉Master/サヨナラ・ヘヴン  16.志方あきこ/Kalliope-カリオペ-   17.Shanachie/月の庭 Sally Garden's  18.大神/「Reset」~「ありがとう」バージョン~   mylist mylist/7649914 

NICO字幕組 發表在 痞客邦 留言(0) 人氣()

這世上,有人喜歡用【贏家】與【輸家】來區分他人。

我比較喜歡用【強者】與【弱者】,因為輸贏有時很表面,但強弱可以很真實。

而對我來說,兩者的差別在於

強者不畏輸,弱者只想贏。

 

要解釋可以寫很多,但我覺得光這一句話就說很多了。

沒力小僧 發表在 痞客邦 留言(0) 人氣()

今天上的是第四堂健身課,依舊從踩腳踏車開始。

前5分鐘力度4,然後6,最後5分鐘8。後面好累啊。

和前面三堂課不太一樣的是今天做的都是新器材,而且比較徧腿部的訓練。

所以我現在腿還抖抖的.........

下一次的課是在星期三早上,所以星期日或一要挑一天去自主訓練兼看正妹!

注意重點:

  • 呼吸還不是很直覺,一不注意就會自己憋氣。
  • 我好容易緊張啊,而且都是不自覺的。要學會怎麼放鬆才對。
  • 我的肌肉柔軟度真是爛斃了。

==

本日紀錄:

2430 昨天睡覺的時間
1000 起床
午餐 阿忠排骨的招牌飯(炸雞翅, 高麗菜, 豆干, 炸蝦, 香腸)
晚餐 羊肉炒麵

沒力小僧 發表在 痞客邦 留言(0) 人氣()

發現之前的介紹有許多謬誤,再重新發表一次。

在這裡有很清楚的描寫:Git Submodule Tutorial

如何 Check out 內含 submodule 的 repository (Ex: super)

#git clone {REPO_PATH}/super
#cd super
#git submodule update --init (這行會對 .git/config 補上 submodule 的敍述,同時更新所有的 submodule)

在 super repo 底下更新所有的 submodule repo

# (在 super 根目錄下)
#git pull (會發現有些 submodule 變成 modified)
#git submodule update --init

修改 submodule 的 commit push 流程(Ex: sub-repo)

#(在 sub-repo 下修修改改後)
#git commit -m 'commit log'
#git push
#(回到 super 的根目錄)
#git commit -a -m 'submodule modified'
#git push

要注意的是,使用 git submodule update --init 所 checkout 的 submodule branch 為一個 no name branch. 所以要直接在有 super repo 底下的 submodule 裡做 commit 的話,要先切到可以提交 push 的 branch.(Ex: git checkout master)

在 super repo 下新增 submodule repo: sub-repo2

#(在 super 根目錄下)
#git submodule add {REPO_PATH}/sub-repo2 sub-repo2 (後面的 sub-repo2 可以自訂為你想要的 path name,比方說 loli
#git commit -m 'add submodule sub-repo2'
#git push
#git submodule init sub-repo2 (這行會對 .git/config 補上 submodule 的敍述)

 

刪除 submodule 原文寫的很清楚了,這裡就不再提。

 

沒力小僧 發表在 痞客邦 留言(0) 人氣()

作者commet:

星間飛行的換詞歌sm3914725  用MMD讓阿部來跳舞。
感謝模組以及工具的開發者們。
某個動畫的commet中寫著,內褲不是條紋內褲就萌不起來、
我把兄貴的內褲改造成條紋內褲了。
上傳人的GUY動畫集mylist/12126067

NICO字幕組 發表在 痞客邦 留言(1) 人氣()

736_large.png
這張圖是網路上找來的截圖,只是展示用

哈哈哈我終於可以用 screen 來掛 MSN,而且都可以把 log 統合起來了!

而且再也不用忍受那越來越肥的安裝檔了。

沒力小僧 發表在 痞客邦 留言(1) 人氣()