1. MasamiKumazawa

    No comment

    MasamiKumazawa
Changes in body
Source | HTML | Preview
@@ -1,37 +1,37 @@
Railsで非同期処理のテストをしようとしたところ、google先生を頼りに
railsu```Ruby
xhr :patch, race_path(@race), race: { nickname: new_name }
```
と書いたら、
```Bash
DEPRECATION WARNING: `xhr` and `xml_http_request` are deprecated and will be removed in Rails 5.1.
Switch to e.g. `post comments_path, params: { comment: { body: 'Honey bunny' } }, xhr: true`.
```
とか怒られたので、言われるがままに
```Ruby
patch race_path(@race), params: { race: { nickname: new_name } }、:xhr => true'
```
としてみたところ、テストが通るようになった。
でも、これでは黒魔術っぽいので、
```ruby
-patch( race_path(@race), {'xhr' => true, 'params' => { 'race' => { 'nickname' => new_name } } }
+patch( race_path(@race), {'xhr' => true, 'params' => { 'race' => { 'nickname' => new_name } } } )
```
とか書くと余計解り辛い?
patchメソッドに渡す引数は二つ、URLとHashの二つ、URLは`race_path(@race) => /race/` で、Hashは`hash => {:xhr,:params}`から構成されていている。
Hashの最初の項目、xhrのtrueは一目瞭然。
次のparamsと言うHashはraceと言うHashを持っていって、raceというHashは`nickname: new_name`という構成になってすよと。
解り辛ぇ(^^;
xhrを最初に持ってきたら、なんか読みやすくなった気はするれど、Hashの階層深くね?