Rails DBがうまく反映されないときの二つの確認

DB更新時にうまく反映されない場合

1.とりあえず、エラーをキャッチしてみる。

エラーキャッチしていない場合falseでそのまま通過している場合がある。

begin                                                               
   user.save!                                               
rescue ActiveRecord::RecordInvalid => e    
   p e.record.errors                                                                              
end
2.エラー内容をみる

だいたいvalidateでこけている模様。
テストデータで適当にいれてると重複とか
文字列みじかすぎるとか、長すぎるとか。
No method errorでこけている場合、modelにValidateに記載があるのにDBにないとか。

docomo HW-01C でSORACOMを試してみた

先日SORACOM SIMをゲットしました。soracom.jp


docomo HW-01C ポケットWi‐Fi 白ロムが家にあったので、
SORACOM SIM突っ込んで動作を試してみた。
microsimなので、アダプタを購入。あきばで数十円とか数百円で買えます。

simを刺してWifi起動させます。
Webブラウザで192.168.1.1へアクセスし、デフォルトAdmin/0000でログイン。
設定->3G設定->プロファイル設定でAPNを追加設定します。


プロファイル名 :sorecom
ユーザ名/パスワード sora/sora
認証方式 CHAPを選択
APN スタティックを選択:soracom.io


minimumで数キロバイトとかだとダッシュボード反映されないんですかね?
一時的に使って、放置していてもダッシュボードに表示されず。
StandardにしていくつかWeb開いたらどかっとダッシュボートに反映されました。

めでたしめでたし。

ひまなときにraspberry piとこれで遊んでみることを模索中。


android ボタン

ボタン押した時に画像を切り替える方法。

drawable/button.xmlを作成し、state_pressed="true"/"false"に
それぞれ画像を設定

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_pressed="true"
        android:drawable="@drawable/button_on" />
    <item android:state_pressed="false"
        android:drawable="@drawable/button_off" />
</selector>

レイアウトのsrcでbutton.xmlを指定

rails 検索結果表示 ページング

検索結果を表示するやつ。ページングとか。
kaminariが便利。
使い方はここがわかりやすい。ruby-rails.hatenadiary.com

ちなみに検索結果を反映させる場合は

@users=User.where(*****).page(params[:page]).per(5)


will_paginateと同居するとmethodエラーでコケるので、removeしてからお使いください。

bootstrap反映させると綺麗ですばらしい。