Realm の導入

Realm の導入

Android アプリでDBを使うのに使える
オープンソースライブラリ Realm をいれてみました

導入するには
bundle.gradle

app/build.gradle
へコードを追記します

これらは
Gradle Scrpits の中にあるので
これをクリックし
一覧を表示すればでてきます

realm

2つありますが
Module:app のほうが
app/build.gradle

Project: とついているほうが
app/build.gradle
となります

realm2

app/build.gradle には

classpath "io.realm:realm-gradle-plugin:2.0.2"


dependencies の部分に追記します

なお、buildscript の中の

    repositories {

    }

の部分は、リポジトリの設定で

dependencies {

}

の部分は、ライブラリの指定になります

app/build.gradle には

apply plugin: 'realm-android'


2行目に追記します

これらの設定をできたら
Sync Now をクリックします

realm3

なお、これによりダウンロードされたライブラリは
app/build/intermediates/exploded-aar/
に配置されます


PDF
カテゴリー: realm | コメントをどうぞ

Android Studio と Github 連携

Android Studio と Github 連携

ソースコードの管理をGithub でするために
Android Studio で設定

Android Studio のメニューで
VCS > import into Version Control >
Share Project on Github をクリック

すると
Github へログインするための設定がでるので
Auth type を Password

Login には Github のログインユーザ名
Password には Github のパスワードを入力

ここまでできたら Login をクリック

Screenshot from 2016-12-14 00:32:40

すると次にマスターパスワードを設定するか
聞かれるので、Cancel をクリックします

Screenshot from 2016-12-14 00:36:20

すると次にリポジトリの作成画面になります
New repository name は
リポジトリ名で
デフォルトだとアプリのプロジェクト名になります

Remote name は origin になっているので
そのままでOK

Description はこのリポジトリの説明になりますが
入力しなくても問題ありません

なお無料で使える Github ですが
有料にしないと非公開の Private モードは使えません

ソースを公開したくない場合には
有料プランにするか、もしくは
自身で GitLab などのサーバを構築する必要があります

基本的には
リポジトリの画面はデフォルトのままで
Share をクリックすればOK

Screenshot from 2016-12-14 00:41:32

次に、どのファイルをcommit に含めるかを設定します

デフォルトでは
プロジェクトのすべてが対象になっているので
入れたくないものはチェックを外します

Commit Message には
コミットするときのメッセージを入れます
日本語でもOKです

デフォルトだと
Initial commit
ですが
最初のコミット
というように変更してもOKです

ここまでできたらOKをクリック

Screenshot from 2016-12-14 00:47:41

しばらく待つと
Successfully shared project on Github
とメッセージがでれば成功

Screenshot from 2016-12-14 00:48:56

表示されたリンクをクリックすると
Github でのリポジトリのページにアクセスできます

Screenshot from 2016-12-14 00:51:55


PDF
カテゴリー: Github | コメントをどうぞ

引越し後の楽天銀行IP制限の変更方法

引越し後の楽天銀行IP制限の変更方法

実家から引っ越ししたときに
ドコモ光に変更したのですが
問題は楽天銀行のIP制限をしたままだったこと

さらに実家のネット回線もADSLから
フレッツ光にしたため
IP制限の設定を変更することに

まずは普通に楽天銀行にログイン

次にセキュリティをクリックし
IP制限サービスの変更をクリック

新しく許可するプロバイダを追加したいので
追加登録をクリック

設定の変更にはワンタイムキーの設定が必須で
ワンタイムキーを入力

これであとは追加するプロバイダのニックネームを
任意でいれれば追加完了

なお、登録済みのプロバイダから
引越し前のものを削除するのを忘れずに


PDF
カテゴリー: 楽天銀行 | コメントをどうぞ

rubyフォーム作成

rails でフォーム作成するときには

.erbファイルを使う

これは、rubyスクリプトを埋め込むためのファイル

phpファイルのようなかんじ

埋め込みの書き方は2つあり

<_ rubyのコード="rubyのコード" _="_"><br clear="none"></br>






<br clear="none"></br>
<_ rubyのコード="rubyのコード" _="_"><br clear="none"></br>

違いは

<_ rubyのコード="rubyのコード" _="_"><br clear="none"></br>




だと実行したあとに、結果を埋め込むこと

こちらは、

secret.yml などにAPIキーなどを書いて

これを読み込むときなどに使う

コード実行だけなら

<_ rubyのコード="rubyのコード" _="_"><br clear="none"></br>




でok


フォームは

form_for

で作成する

詳しくは

Rails】formヘルパーを徹底的に理解する

http://qiita.com/shunsuke227ono/items/7accec12eef6d89b0aa9

を参考に


PDF
カテゴリー: 未分類 | コメントをどうぞ

ルーティングメソッド

/messages

index GET

一覧画面

/messages

create POST

作成処理

/messages/new

new GET

新規登録画面

/messages/:id/edit

edit GET

編集画面

/messages/:id/

show GET

個別画面

/messages/:id/

update PATCH/PUT

更新処理

/messages/:id/

destroy DELETE

削除処理

resources :messages

新規投稿の流れは

GETで

messages/new

へアクセス

メッセージをフォームで書き込んでPOST

POSTで

/messages

へアクセスし

書き込んだメッセージを

MessagesController#create

が受け取ることで

新しいメッセージ作成

これで

message一覧は

/messages

出みれる

1つずつの詳細をみたいなら

/messages/:id/

となる

新規登録と、詳細画面を一覧画面と同じにするなら

新しく画面の作成は不要

もし、別の画面をつくるなら作成が必要になる

index

create

は同じURL

show

update

destroy

は同じURLだけど

HTTPメソッドの種類つまり

GET

POST

DELETE

により

アクションとなる index などに自動で振り分けられる

ただし、URL直うちしても

GETメソッド以外は使えない

ちなみに

resourcesメソッドを使うことで

ビュー内で使うURLヘルパも自動作成される

URLヘルパは

リソースに必要なURLを自動作成する仕組みのこと

これで作成されたURLヘルパは

リンクのとき link_toで指定するときに使う

このヘルパ名が

_path なら相対パスだけど

_url だと絶対urlになるので注意

あと

message_path(id)

だった場合

渡すのはモデルオブジェクトのid になるけど

モデルオブジェクトを渡しても同じなので

message_path(message)

でもok


PDF
カテゴリー: 未分類 | コメントをどうぞ

投稿機能の作成メモ

投稿機能は、Webフォームから内容を記述し

内容をDBへ保存する

これは

作成したコントローラーとモデルを使う

ちなみにモデルはdb 担当

コントローラーがphp

ビューはhtml

みたいなかんじ

まずは、routeの設定

これをやらないとバスがでない

追記するのは

resources :messages, only: [:create]

これを追記してから

rake routes

を実行すると

パスが変化するのがわかる

railsではこのように

ルーティング設定を

config/routes.rb

で設定することで

URLを生成している

これは resourcesメソッドを使うことでできる

メッセージの表示や操作をしたいのなら

resources :messages

を追記すればいい

詳しくは

http://www.rubylife.jp/rails/routing/index6.html

を参考に

構文は

resources :リソース名 do  member do    HTTPメソッド名 ’アクション名’  end  collection do    HTTPメソッド名 ’アクション名’  endend


PDF
カテゴリー: 未分類 | コメントをどうぞ

Y!mobileの解約

ドコモ光をつなげたことと
Y!mobile契約から2年経過し
月7GB以上使用した場合
500MB追加するたびに500円かかるため
解約することにしました

なお、Y!mobileを解約するときに注意することは
契約更新月であるか
そして、解約することのできる店舗であるか
になります

契約更新月の確認方法を教えてください

http://faq.ymobile.jp/faq/view/106066

に確認方法が載ってます

私の場合
My Y!mobile
で確認しました

なお、解約に必要なものは
ワイモバイルのショップに何を持参すれば良いですか?
http://faq.ymobile.jp/faq/view/404309
に掲載されてますが

実際に必要なものは
運転免許証
そして、使用していたY!mobileの端末です

解約にあたり、Y!mobileの番号が必要になりますが
これは端末に入っているSIMカードがあれば問題ありません

また、私の場合
クレジットカード払いのため
印鑑は不要でした

また
解約可能な店舗の検索ですが
店舗そのものは
http://www.ymobile.jp/shop/index.html
で探せますが
注意点は、ワイモバイルショップ
を探すことで
取扱い店だと解約ができません

以前、とある家電量販店で
Y!mobileを機種変するときに
一度解約してから新規加入にすれば
ポイントなどがついてお得と聞いて
やりましたが、
取扱い店だったため解約ができず、自分でワイモバイルショップを探し
解約するまで日割りで料金を払うことになりました


PDF
カテゴリー: 未分類 | コメントをどうぞ

ドコモ光がつながらなくなったときの対処

ドコモ光を開通してから1ヶ月たったときにつながらなくなったので
その対処と原因のメモ

帰宅後に Amazon TV が見れなくなり、
Nexus7 での検索やクックパッドレシピが見れないため
原因を探ることに

まず疑うのがONUのランプがすべて点灯しているかということ

今回の場合、電源は点灯しているけど
インターネットと認証の部分が点灯していないため
インターネットでまずは検索

NTT機器のランプ状態

を元に状態の確認

電源をOFFにしてから数分後に電源をいれるというのもあったけど
こちらも効果なし

次に、光ケーブルの接触不良や、差し込みが外れている可能性を考えて押し込んでみたけど
これも効果なし

このため、
NTT西日本
0120248995
の番号がONUに記載されていたため
こちらに電話をかけたものの、ドコモ光の場合は対応が違う場所になるということで

ドコモ光サポート
0120800000
に電話をかけ直すことに

ちなみに、本人確認のために
契約したときの電話番号と
使用している携帯がdocomo でない場合、ドコモ光の契約IDが必要になります

電話をかけた結果、電源のOFF、光ケーブルといったものを再度行うように
言われたけど、効果がないため
NTTの業者が訪問し、調べることに
日程の予約をして後日診断してもらった結果
光ケーブルを束ねてあったけど
これが原因でした

折れ曲がっていたため、断線のような状態になっていたようです


PDF
カテゴリー: ドコモ光 | コメントをどうぞ

rails コンソールでのデータ取得方法

rails コンソールでのデータ取得方法

.all だとすべてのデータの取得ができる

特定の id のデータを取得したいのなら
find() を使う

もし id:1 のレコードを取得するのなら
find(1)
というようになる

Messageの中から取得するのなら

Message.find(1)

というかんじ

もちろん、この検索結果を変数に格納することもできる

hoge_msg = Message.find(1)

とすると hoge_msg に結果が格納される

次に find_by()
find と似てるけど、こっちは
カラム名と値のペアで検索できる
これは、名前とかで検索するときに使える

ちなみに、取得できるのは1件だけなので注意

hoge_msg = Message.find_by(name:"hoge")

とすると
nameが hoge のものを hoge_msg に格納する

応用で body の中身が test のものを検索して格納なら

test_msg = Message.find_by(body:"test")

というようになる

もし1件ではなく、該当するものすべてにしたいのなら
where を使う
body が hello のものをすべて調べるのなら

Message.where(body:"hello")

とすればいい


PDF
カテゴリー: ruby on rails | コメントをどうぞ

rails のDBをコンソールで操作

rails のDBをコンソールで操作

rails c

とすると
rails コンソールになり
データ作成、保存、削除などをコマンドで行うことができる

なお、タイプしているときに
tab を押すと補完機能で候補がでる

もし、メッセージをいれるのなら
まずは変数に代入

msg = Message.new(name:"hoge",body:"test text")

として
次に

msg.save

とすると保存される

入力するときに
id が nil でも自動で振り分けなら問題ないし
作成時刻の created_at や
更新時刻の updated_at も自動で入るので
nil でも問題ない

あと、
.save を実行したときに

=> true

がでるけど、これはデータ保存できたことを示す
もし、 false なら保存できていないということ

保存したデータをすべて取得するのなら
.all をつかう

もし、Message に保存したものをみるのなら
Message.all
とすればOK

このときに id が自動で連番で保存した順番についているのがわかる

なお、rails c で
rails コンソールになっている状態から抜けるには

quit

とすれば抜けることが可能


PDF
カテゴリー: ruby on rails | コメントをどうぞ