PhoenixTutorialを写経(1)
以下のサイトを写経してみる
RailsTutorial作者様、翻訳者様、以下のブログの作者様に本当に感謝!
2015年6月20日
[Rails Tutorial for Phoenix]Demo application
https://daruiapprentice.blogspot.jp/2015/06/rails-tutorial-for-phoenix_20.html
(環境)
Windows 8.1
VirtualBox 5.1.14
Vagrant 1.9.1
CentOS7.3
Erlang/OTP 19
Elixir 1.3.4
Phoenix 1.2.1
環境構築は以下のように行っている
http://twosquirrel.mints.ne.jp/?p=14421
WindowsでVagrant使って共有フォルダで操作するときの注意点
http://twosquirrel.mints.ne.jp/?p=14545
(0)Windows(ホストOS)のコマンドプロンプトで、vagrant upして、TeraTermでログイン(127.0.0.1, 2222, vagrant, vagrant)
(1)Preparation
mix phoenix.new demo_app
cd demo_app npm install --no-bin-links node node_modules/brunch/bin/brunch build
mix ecto.create mix phoenix.server
ホストOSで、http://localhost:4000/
Ctrl +C を2回でサーバ停止。
(2)Data model
User
users
name:string, email:string
id:integer, inserted_at:timestamp, updated_at:timestamp
Micropost
microposts
content:string, user_id:integer
id:integer, inserted_at:timestamp, updated_at:timestamp
(3)Create users resource
mix phoenix.gen.html User users name:string email:string
web/router.ex
mix ecto.migrate
mix phoenix.server
UserのCRUD処理ができるようになった。(Railsのscaffoldと同じ。)
(4)Create microposts resource
mix phoenix.gen.html Micropost microposts content:string user_id:integer
web/router.ex
mix ecto.migrate
mix phoenix.server
http://localhost:4000/microposts
web/models/micropost.ex
(元のページでは min になっていたので、 max の訂正した)
140文字以上のmicropostを投稿しようとすると、エラーが表示される
(5)Associate with has_many
web/models/user.ex
web/models/micropost.ex
ん?よくわからない。
RailsTutorialでは、
https://railstutorial.jp/chapters/toy_app?version=5.0#sec-demo_user_has_many_microposts
のところではあるが、iexの使い方がいまいちわからないので、私にはuserモデルとmicropostモデルの関係は確認できず。
ディスカッション
コメント一覧
まだ、コメントがありません