キリンめも(技術)

記事を書いています #rails #swift #JS #UE4 #unity

Railsの会12日目「テストが落ちたので修正」補足

 

今日の進捗。

f:id:geta206:20160719052539p:plain

agenda

  1.  テストが落ちた原因
  2. 解決方法
  3. まとめ 

1.テストが落ちた!!!!!!(テストが落ちた原因)

テストコマンドを打った↓

$ bundle exec rake test

iTerm------------------------------------------------------------------------------------

# Running: 
F.F
Finished in 0.389066s, 7.7108 runs/s, 15.4215 assertions/s.
  1) Failure:
StaticPagesControllerTest#test_should_get_about [/Users/kadehina/Desktop/web.study/Ruby-study/workspace/sample_app/test/controllers/static_pages_controller_test.rb:19]:
<About | Ruby on Rails Tutorial Sample App> expected but was
<Home | Ruby on Rails Tutorial Sample App>..
Expected 0 to be >= 1.
 
  2) Failure:
StaticPagesControllerTest#test_should_get_home [/Users/kadehina/Desktop/web.study/Ruby-study/workspace/sample_app/test/controllers/static_pages_controller_test.rb:7]:
<Home | Ruby on Rails Tutorial Sample App> expected but was
<About | Ruby on Rails Tutorial Sample App>..
Expected 0 to be >= 1.
 
3 runs, 6 assertions, 2 failures, 0 errors, 0 skips
 
FAIL: 1
 
----------------------------------------------------------------------------------------------------------- 
 エラーが出ている…!
2)の部分。エラー文に注目。

f:id:geta206:20170311184431p:plain

ーーーーーーーーーーーーーーーーーーー
そして、URLの部分を読む。。
[/Users/kadehina/Desktop/web.study/Ruby-study/workspace/sample_app/test/controllers/static_pages_controller_test.rb:7]:
 
7行目がおかしい???????
 
とりあえずエラー文の指示通り、Sublime で開き、間違ったコードを探した。
7行目を見てみる。
ーーーーーーーーーーーーーーーーーーーーー
7行目  
           Sublime
  assert_select "title", "Home | Ruby on Rails Tutorial Sample App"
 
…?? どうゆう意味なんだ!
これの意味を教科書から探し始める。
 
教科書のサイトを開き
コマンド+F で  assert_select "title", "Home | Ruby on Rails Tutorial Sample App” を探す。
以下のURLに7行目の意味が書かれていた。
ーーーーーーーーーーーーーーーーーーー
なるほど。
特定のHTMLタグが存在するかどうかをテストします。(この種のアサーション メソッドはその名から「セレクタ」と呼ばれることもあります)。

 

 その次に下記の文章を読んでまた、Sublime で確認した。

上のセレクタは、<title>タグの内に「Home|Ruby on Rails Tutorial Sample App」という文字があるかどうかをチェックします。
この文章の意味を何となくわかった…!
assert_select "title", "Home | Ruby on Rails Tutorial Sample App"
 
 ーーーーーーーーーーーーーーーー
 
そして、、もう一度エラー文読んだ。
 
<Home | Ruby on Rails Tutorial Sample App> expected but was
<About | Ruby on Rails Tutorial Sample App>..
 
homeがaboutになっているのかな…?(多分)
 …?わからない!!!!
 
 もう一度
 
えらーのコードaboutのページ()を確認した。
about.html.erb と書かれているコードに
<% provide(:title, “Home") %>
(:title, “Home") の中がaboutページなのにHomeになっている…!
間違いを発見した。
ーーーーーーーーーーーーーーーーーーーー
 
もしかすると、homeも…?と思い
home.html.erb も同じように確認した。
<% provide(:title, “About") %>
(:title, “About")の中はやはりAboutって書かれていた。( ;´Д`)
!!ここで自分の間違いに確信を持つ。(遅い
 
ーーーーーーーーーーーーーー

2.error解決方法

about.html.erbから修正しました。
以下のようになっていた。
<% provide(:title, "Home") %>
<h1>Sample App</h1>
<p>
  This is the home page for the
  <a href="http://www.railstutorial.org/">Ruby on Rails Tutorial</a>
  sample application.
</p>
 
これを
以下のように修正しました。(aboutページ

<% provide(:title, "About") %>
<h1>About</h1>
<p>
  The <a href="http://www.railstutorial.org/"><em>Ruby on Rails
  Tutorial</em></a> is a
  <a href="http://railstutorial.jp">book</a> and
  <a href="http://screencasts.railstutorial.org/">screencast series</a>
  to teach web development with
  <a href="http://rubyonrails.org/">Ruby on Rails</a>.
  This is the sample application for the tutorial.
</p>

 

 
ーーーーーーーーーーーーーーーーーーーーー
同様に
home.html.erb も同じように。
 <% provide(:title, "About") %>  ・・・・・(以下略)・・・・
 と書かれていたものを以下のようにコピペ(教科書から)した。
<% provide(:title, "Home") %>   ・・・・・(以下略)・・・・
ーーーーーーーーーーーーーーーーーーーーー
できているのか確認のためエラー解決したか確認!
$ bundle exec rake test
iTermーーーーーーーーーーーーー
# Running:
...
Finished in 0.351705s, 8.5299 runs/s, 17.0597 assertions/s.
 
3 runs, 6 assertions, 0 failures, 0 errors, 0 skips
ーーーーーーーーーーーーー
 
できました。!!!!!

3.まとめ 

かなり初歩的な間違いだったのですが、

$ bundle exec rake test の大切さを学べた気がします。

そのほかにも エラーの直し方までを相手に説明のために書けば良いのかも…!

反省点

  • エラーの読み方が甘い。(英語大事…
  • コードの意味を理解していない。

 

エラーの解決方法まで簡単にまとめてみた。

  1. エラーが発生!!(エラー文を読む 7行目がおかしいらしい
  2. 7行目を読む 
  3. 意味を調べるため、教科書を見直す(railstutorial)
  4. 文が多くて探せなかったので command  +  F で検索をかける
  5. エラー文をもう一度みる (home と aboutの異変に気付く。
  6. 修正
  7. $ bundle exec rake test

 

まだまだ初心者から抜け出せそうにない…( ;  ; )

Railsの会 12日目「セキュリティー」

今日の進捗です。

f:id:geta206:20160716233714p:plain

 

agenda

  1. 新単語集 <%=, ERB  , yield
  2. sqlインジェクション
  3. XSS
  4. CSRF
  5. まとめ

 

1.新単語

  •  <%=  Rubyの出力。

  • ERB

         Rails の標準テンプレートエンジン。(他の種類にhamlとかもある)

Erbは"Embedded RuBy"の略です。
.html.erbファイルはRubyコードが組み込まれたhtmファイルのようなもの、と考えてよいでしょう。
Railsはテンプレートエンジンとしてerbを標準で使っています。その他にはhamlなどありますよ。

  • yeild  特殊のページ。

使い方

出力がいらないコード
<% ~ %>
結果を出力
<%= ~ %>
結果をエスケープしてしないで出力
<%== ~ %>
後ろの改行を取り除く
<% ~ -%>
行頭までの空白を削除
<%- ~ %>
コメント
<%# ~ %>

 

ビュー(view) - - Railsドキュメント

2.SQLインジェクション 

SQL文を使ってパスワードや個人情報を盗んだり、なりすましをしたりする。

 

攻撃の仕方

ログイン画面等の中に「’」を入力し、エラー文が出てくるか確認。

もしエラー文が出てきたら、PHPを使用でき、パスワードや不正アクセス等が可能になる。

 

  ログイン画面でパスワードの欄に不正なデータベース命令を実行するための文字列を入力することで、パスワードを知らない攻撃者が正当な利用者としてログインし、クレジットカード番号などの個人情報を窃取したりすることがあります。
また、別の方法によって、データベースに保存されているデータを一括で取り出されてしまったり、データが不正に改ざんされたりすることもあります。最近は、このような手法による個人情報の漏洩(ろうえい)事件が相次いで発生しています。

SQLインジェクションへの対策|情報管理担当者の情報セキュリティ対策|企業・組織の対策|国民のための情報セキュリティサイト

 

3.XSS

クロスサイトスクリプティング。管理人に URLを押させると別の悪質なサイトに飛ばされ利用者にも被害が出る。

偽サイト等を作り、改ざんをするのが一般的。

XSS攻撃

XSS(クロスサイトスクリプティング)JavaScriptを実行するコードを制作者の意図していない場所に埋め込む手法であって、PHPを使って実際にプログラミングをしていくうえで真っ先に考えなければいけないのがこの攻撃に対する対策です。

【PHP入門講座】 XSS攻撃への対策 - Qiita

コメントにアラート等入れるとサイトを表示させるたび出したりして攻撃できる。 

  <script>alert(1234)</script>

 

4.CSRF

CSRFを「よそのサイトの機能を呼び出す攻撃」と表記

クロスサイトリクエストフォージェリ

リクエスト強要(CSRF:Cross-site Request Forgery)とは、別のサイトに用意したコンテンツ上の罠のリンクを踏ませること等をきっかけとして、インターネットショッピングの最終決済や退会等Webアプリケーションの重要な処理を呼び出すようユーザを誘導する攻撃である。

URLをクリックしたり、メールを開いたりするだけで、感染させることができます。。

実行手順

  1. 攻撃用のコードを用意する
  2. URLをメッセージを書く。

youtu.be

 

5.まとめ

webに必須知識の内容を学びました。

1.sqlインジェクション    「'」で確認できる。SQL文を使ってデータを操作する。

2.XSS                               クロスサイトスクリプティング。訪問者に被害を出す攻撃 

3.CSRF                            管理者にURLを送りクリックさせ、データの改ざんを行う。

 

 

 

 

 

Railsの会11日目「Railsテスト」

今日の進歩です。

f:id:geta206:20170308145349p:plain

agenda。

  1. リファクタリング
  2. ステータスコード
  3. リダイレクト(HTTP)
  4. 短縮URL
  5. リダイレクション
  6. テスト成功例・失敗例
  7. スプリングサーバー
  8. キャッシュ
  9. スプリング
  10. エラーまとめ
  11. まとめ

 

テストについてまとめた

テスト開発サイクルは
1「失敗するテストを先に書く」
2「アプリケーションのコードを書いて成功させる」
3「必要な時リファクタリングする」 の順番
 
テストを書く場所     static_pages_controller_spec.rb
 

----------------------------------------------------------------------------------------

1.リファクタリング

コード読みやすくしたりすることだよ!

リファクタリングは「class」の名前をわかりやすくしたり、コメントを追加したりし理解しやすいコード に修正する。

  ⚠️バグが増えることもある。

 

リファクタリングとは、ソフトウェアの外部的振る舞いを保ちつつ、理解や修正が簡単になるように、内部構造を改善することです。

リファクタリングとは何か?

 

takatoshiono.hatenablog.com

 

 

2.ステータスコード

エラーの番号。よく見るのが404かな…。

分類コードメッセージ1.01.1
情報
(Informational)
100 Continue ×
101 Switching Protocols ×
成功
(Success)
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information ×
204 No Content
205 Reset Content ×
206 Partial Content ×
転送
(Redirection)
300 Multiple Choices ×
301 Moved Permanently
302 Found
Moved Temporarily
303 See Other ×
304 Not Modified
305 Use Proxy ×
クライアントエラー
(Client Error)
400 Bad Request
401 Unauthorized
402 Payment Required ×
403 Forbidden
404 Not Found
405 Method Not Allowed ×
406 Not Acceptable ×
407 Proxy Authentication Required ×
408 Request Time-out ×
409 Conflict ×
410 Gone ×
411 Length Required ×
412 Precondition Failed ×
413 Request Entity Too Large ×
414 Request-URI Too Large ×
415 Unsupported Media Type ×
サーバエラー
(Server Error)
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Time-out ×
505 HTTP Version not supported ×

 

 

HTTPステータス コード一覧

よく見るエラーは覚えておこう…😊

 

3.リダイレクト(HTTP)

リダイレクトとは、サイトにアクセスしようとしたユーザーを、最初にリクエストされた URL とは別の URL に移動させることです。 別の URL へのリダイレクトには正当な理由がある場合もあります。 たとえば、サイトを新しいアドレスに移転した場合や、複数のページを 1 つに統合した場合などです。

https://support.google.com/webmasters/answer/2721217?hl=jp

 

4.短縮URL

 そのまんまの意味。

短縮 URL を使うメリット

短縮 URL は、ただリンクを短く表現できるだけではありません。
他のメリットを挙げてみました。

クリック率が上がる

短縮URLと短縮されていない長いURLで比較すると、
短縮URLの方が圧倒的にクリック率が高いという統計があります。

手書き・口頭で伝えられる

どのサービスも短縮後の URL は 20 文字前後なので、
電話口やホワイトボードなどへの手書きでもなんとか伝えられるでしょう。

プロっぽく見える

まだまだ一般なレベルで認知されているとは言えないサービスなので、
使うとプロっぽく見えます(笑)

アクセス解析がある

Google URL Shortener や Bit.ly であれば、
短縮URLのうしろに「+」をつけることで、
アクセス解析の画面が表示されます。

http://www.dreamhive.co.jp/201408/2596

 

もちろんデメリットも

 

リンク先がどんなサイトなのかわからない

どのサイトにリンクされているかをURLで判断できないので、
フィッシングサイトにも引っかかりやすくなります。

もっとも悪用されたのがこの機能でらしいです。

URL が覚えられない

短縮するために、数値や記号の羅列になっているため、
記憶するのに適していません。

ブランド化が難しい

URL が覚えられないのと同様に
せっかくのあなたのドメインが隠れてしまうので、
リンクを開くユーザーは自分がどのサイトにアクセスしているか
分からなくなってしまいます。

遅くなる

リダイレクトが発生するので経由するサーバーが増え、
その分表示速度が低下します。

作った短縮 URL は消せない

短縮 URL のリンク先は変更できません。

一度作ったリンクはそのサービスが存在する限り利用可能ですので、
無価値な URL を世の中に残してしまいます。

サービスが永続的に存在するかがわからない

どのサービスも未来永劫使えるか把握できず、
サービスが止まれば短縮 URL は使えなくなります。

あの Google でさえ、
不要と判断したサービス(Reader など)は撤退する世の中です。

http://www.dreamhive.co.jp/201408/2596

 

5.リダイレクション

標準入力にはデフォルトが割り当てられていて、これをユーザが自由に変更できる切り替えのこと。(入出力の切り替え)

 通常、コマンド入力はキーボードから行い、その結果を画面に出力し、エラーがあればその内容も画面に出力します。これは、以下のような定義があるからです。

 標準入力(/dev/stdin) = キーボード

 標準出力(/dev/stdout) = 画面

 標準エラー出力(/dev/stderr) = 画面

 「/dev/stdin」などは特殊ファイルと呼ばれ、各入出力装置をファイルとして操作できるようにしたものです。そして、この定義を変更することで、キーボード以外の装置から入力し、画面以外の装置へ出力することが可能になります。

 この切り替えのことをリダイレクションといいます。

 

codezine.jp

 びっくりするくらい何言っているのか分からないぞ…!😭

 いろんな記事見たけど説明が意味ワカラナイ

6.テストの成功・失敗

  • 成功したとき ・・・ ... で表す。
  • 失敗したとき ・・・  F  又は  E で表す。 
  • 失敗例
    NameError: undefined local variable or method `static_pages_about_url'

     意味:aboutページのurlがないよ

     解決策:ルーティングファイルを修正

 

7.スプリングサーバー

pringはrubyで実装されているプロリーダ。

プリローダとは

先取り、先読みという意味。

必要なデータを先取りして読み込む時間を短くする技術。

youtubeに使われている。 

 

8.キャッシュ

パソコンが一時的にほぞんしているデータのこと。

メリット

  •  URLが保存されるのでいきたいサイトにすぐ行ける。

デメリット

  • システムを更新したとき、反映されないことがある。

 

9.スプリング

  Spring も Rails application preloader と総称されるソフトウェアの仲間です。テストを実行する度に Rails アプリケーションをロードするのは時間の無駄なので、サーバとしてプリロードしておき、テストの実行時間短縮を目的としたものです。古くから使われているものとしては、Spork というものがあります。しかし、Spork については簡単に触れるだけにとどめます。

Spork/Zeus/Spring によるテスト実行時間の短縮 - RSpec/Capybara入門 - Ruby on Rails with OIAX

 

使い方

まず、Gemfile に以下のコードを追加します:

group :development do
  gem 'spring'
  gem 'spring-commands-rspec'
end

そして、bundle install コマンドを実行します。

何も準備は要りません。いきなり、テストを実行できます:

 

$ spring rspec spec/

Zeus の場合と異なり、Spring はバックグランドで黙ってサーバを起動するので、私たちが別ウィンドウで明示的にサーバを起動する必要がないのです。

 

常に Spring を使って RSpec のテストを実行するのなら、bin ディレクトリの rspec コマンドを書き換えてしまうといいでしょう。次のコマンドを実行すると、自動的に書き換えが完了します:

$ spring binstub rspec

bundle binstub rspec を実行すると bin/rspec の中身が元に戻ってしまうので注意してください。

すると、今後は Spring の存在を意識せずに RSpec のテストを実行できます:

$ bin/rspec spec/

現行の Sinope (この連載で作っている Rails アプリケーション)のテストを私の PC で実行してみたところ、初回はサーバの起動に時間がかかるため 4.03 秒かかりましたが、2回目からは 2.74 秒で終わりました。

Spork/Zeus/Spring によるテスト実行時間の短縮 - RSpec/Capybara入門 - Ruby on Rails with OIAX

おまけ エラーまとめ

1 'about'というページがないよ!!ルートが設定されていない (routes.rb) 

f:id:geta206:20170309235522p:plain

 

2  <Home | Ruby...App> の書き方が下の正しい記述と見比べて間違っているよ!

(この場合空白がない)

f:id:geta206:20170309235628p:plain

 

3  aboutページのテンプレートがないよ!

f:id:geta206:20170309235651p:plain

 

4   名前が間違っている(定義されていない変数またはメソッドです)

f:id:geta206:20170309235815p:plain

 

 

11.まとめ

  1. リファクタリング    コードをわかりやすくすること。
  2. ステータスコード    エラーの番号
  3. リダイレクト(HTTP) サイトの移転とかに使われる。
  4. 短縮URL        そのままの意味
  5. リダイレクション    URLの移転。サイトのリニューアルとかに使う。
  6. テスト成功例・失敗例   .../F /E エラーの内容
  7. スプリングサーバー   ストリーミングのことかなとか思っている。
  8. キャッシュ       データの記録。
  9. スプリング       Railsサーバのダウンロード時間を短くする技術。

参考URL

Ruby on Rails チュートリアル メモ #2 - belog

Ruby のエラーメッセージを読み解く(初心者向け)その 2 - Qiita

 

 

 

Railsの会10日目 3章 Railsの省略コマンド /HTTPメゾット

「祝」3章入りました✨✨

今回の進捗はこちらになります。

 

f:id:geta206:20160706150948p:plain

 

agenda

  1. Railsの完全なコマンドとRailsの短縮系
  2. キャメルケース・スネークケース
  3. HTTPメゾット
  4. まとめ

1章と2章で学んだところは省略しております٩(๑′∀ ‵๑)۶•*¨*•.¸¸♪

1.Railsの完全なコマンド・Railsの短縮系コマンドとは

 Rails sが正式コマンドだと思っていました…( ;´Д`)

 

f:id:geta206:20160706155744p:plain

第3章 ほぼ静的なページの作成 | Rails チュートリアル

 他にも!

  • rails destroy → rails d
  • bundle install  → bundle 

 

qiita.com

 

2.キャメルケース・スネークケース

  • キャラメルケース

単語の頭文字を文字にしてつなぎ合わせた名前。

  • スネークケース

単語間にアンダースコアを加えてつなぎ合わせた名前。

 

www.indetail.co.jp

 

 3.HTTPメゾット

HTTPリクエスト (GETPOSTPATCHDELETE) 

 

 

 

  • GET

GET送信の特徴

  • データをリクエストURLの後に付与して送信する。(Webサーバやプロキシサーバのアクセスログなどに残る)
  • 他の人がURLを見ると、入力したデータが丸見えになってしまう。(ログイン画面などではIDやパスワードが他者から丸見えになるのでGET送信は使用するべきではない)
  • URLの後に付与するのでデータ量(文字数)に制限が掛かる。(Internet Explorer のURLに使用できる最大文字数は最大2,048 文字)
  • GETはHTTPヘッダ情報に含まれるため、簡単に取得することが可能。
  • テキストデータのみ送信可能。

GETとPOSTの違い | 覚え書き.com

  • POST  

POST送信の特徴

  • データ量が多い場合はPOSTを使用する。
  • POSTはBODY部分(form)に含まれるため、取得がちょっと面倒。
  • テキスト、バイナリどちらでも送信可能。
  • POST送信後にブラウザの戻るボタン押下で有効期間切れが発生する場合がある。

GETとPOSTの違い | 覚え書き.com

  • PATCH

        冪等でない処理に使われる。一部のみ更新する。  

 

  • DELETE

 リソースを削除するメゾット

 

補足

rails generate controller StaticPages home help

     home / help ページ のコントローラとviewを作成する。

 

be rails generate controller StaticPages

               rails generate コマンドで生成されるファイル一覧表

 

おまけ
 エラーの解決法

f:id:geta206:20170306005139p:plain

 

原因

・間違ったrailsのversionでインストールしたため。versionロックがかかっている。

    
Gemfile.lockとは??

Railsアプリケーションの依存関係を記述するファイル。

Railsアプリケーションごとにことなる依存関係やバージョンが記述されている。

管理人→Bundler

参考サイト

normalse.hatenablog.jp

 

解決法
・bundle install Gemfile.lockにかかれているversionをインストール(一つづつ)
    rm -rf Gemfile.lock
をした後にもう一度正しいバージョンを指定してインストール 
(一度削除して作り直した方がはやいかも。。
 
bundle update Gemfileに描かれている最新版にしてGemfile.lockを上書きし,インストールする
  ※updateは今の環境が動かなくなるかもしれないので注意

 

 

4.まとめ 

  • HTTP メゾット
  • キャメルケース・スネースケース
  • Rails省略形

 

   新しい言葉

  • 冪等性 

   変わらず数値が変わらない

  • マイグレート 

   ソフトウェアやシステム、データなどを環境に

   移転したり新しい環境に切り替えたりすること。

 

 

 

Railsの会 8日目「Microposts Railsのメリットデメリット」

 久しぶりの投稿です。

 

今日の進捗です。

f:id:geta206:20160630010019p:plain

 

ーーーーーーーーーーーーーーーーーーーーー

今日のagenda。

  1.  Microposts リソース
  2. Microposts をマイクロする
  3. has_manyに関連づける
  4. Railsの良い点・課題点
  5. まとめ

ーーーーーーーーーーーーーーーーーーーーーーーーー

1.Microposts リソース

rails generate scaffold

コマンドを使います。

 

 

 データモデルを実装します。。

$ rails generate scaffold Micropost content:text user_id:integer

 

データベースの更新。

$ bundle exec rake db:migrate

 

 

f:id:geta206:20160702155054p:plain

 

class MicropostsController < ApplicationController

f:id:geta206:20160703001021p:plain

第2章 Toyアプリケーション | Rails チュートリアル

 

説明文が??だったので

わからない単語を調べてみました。。

 

RESTとは

karur4n.hatenablog.com

 

 

アーキテクスチャとは

www.weblio.jp

コンピュータの構造って具体的に何か??

 

www.atmarkit.co.jp

 

ーーーーーーーーーーーーーーーーーーーーーー

2. micropostsをマイクロする

 

validates :content, length: { maximum: 140 }

 

ーーーーーーーーーーーーーーーーーーーーーーー

3.has_manyに関連づける

 consoleとは

 railsの環境を読み込んだ状態でrubyコードを実行できるツール。

これは便利!Ruby on RailsでConsoleを使う方法 | TechAcademy

 使用例

  •  いろいろなメゾットを試しながら実装したいとき

  ロジックを実装の処理を思考錯誤したいとき。

  

  •  エラーが起こったが原因がわからないとき

  一行ずづ実行して結果を見ながらデバッグすることができる。

 

 

 

ーーーーーーーーーーーーーーーーーーーーーーー

4.Railsの良い点・課題点

 良い点

  • Rails全体を高度なレベルで外観できた
  • MVCモデルを学べた
  • データモデルの作成を初めて行った
  • DBの背景を持つwebアプリケーションを本番環境で動かした。

課題点

  • レイアウトスタイルも設定されていない
  • home等の定番の静的ページがない
  • ユーザがパスワー度を設定できない
  • ログインの仕組みがない
  • セキュリティのための仕組みがまったくない
  • ユーザーとマイクロポストの自動関連付けが行われていない
  • TwitterのようなFollowing、Followedがない
  • フィード(コンテンツを配信用)にできない
  • まともなテストがない  ??
  • 理解が困難

 

ーーーーーーーーーーーーーーーーーーーーー

5.まとめ 

  • Webのあらゆる部分からもモデルデータにアクセスしてやりとるができるようになる。
  • てっとり早いのがとりえだが、Railを理解するのには向いていない。
  • Railsではデータに制限をかけることができる。
  • Railsコンソールを使用すると、コマンドラインからRailsアプリケーションとやりとりすることができる。
  • Railsコンソールを使用すると、コマンドラインからRailsアプリケーションとやりとりすることができる。

 

おまけ 

Ruby error

私自身が良くはいてたerror

  •  routing
  • Undefined 
  • syntax

 

 

継承は「<」で表す。

 

 

media.tech-salon.com

 

次回は3章に入ります