teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

5

質問内容の修正

2019/03/04 04:06

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -6,8 +6,8 @@
6
6
  <%
7
7
  def accordion(**locals, &block)
8
8
  # 固定の引数付与
9
- locals[:opened] = ...
9
+ locals[:opened] = false
10
- locals[:class] = ...
10
+ locals[:class] = 'text-center'
11
11
  render layout: 'layouts/accordion', locals: locals, &block
12
12
  end
13
13
  %>

4

質問内容の修正

2019/03/04 04:06

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -8,7 +8,7 @@
8
8
  # 固定の引数付与
9
9
  locals[:opened] = ...
10
10
  locals[:class] = ...
11
- render layout: 'layouts/accordion', locals: locals, block
11
+ render layout: 'layouts/accordion', locals: locals, &block
12
12
  end
13
13
  %>
14
14
 

3

質問内容の修正

2019/03/04 04:04

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -12,7 +12,7 @@
12
12
  end
13
13
  %>
14
14
 
15
- <%= accordion id: 'hrsp_setting', title: ( t 'user.favorite' ) do %>
15
+ <%= accordion id: 'fav_setting', title: ( t 'user.favorite' ) do %>
16
16
  ...
17
17
  <% end %>
18
18
  ```
@@ -26,7 +26,7 @@
26
26
  いろいろ削っていくうちにメソッド定義ではなく呼び出し側の I18n.t の書き方で syntax error になるみたいです
27
27
 
28
28
  ```
29
- accordion id: 'hrsp_setting', title: ( t 'user.favorite' ) do
29
+ accordion id: 'fav_setting', title: ( t 'user.favorite' ) do
30
30
  end
31
31
  ```
32
32
  だと `syntax error, unexpected keyword_do, expecting keyword_end `
@@ -34,7 +34,7 @@
34
34
 
35
35
  ```
36
36
  favorite = t 'user.favorite'
37
- accordion id: 'hrsp_setting', title: favorite do
37
+ accordion id: 'fav_setting', title: favorite do
38
38
  end
39
39
  ```
40
40
 

2

質問内容の修正

2019/03/04 04:03

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -12,7 +12,7 @@
12
12
  end
13
13
  %>
14
14
 
15
- <%= accordion title: 'title' do %>
15
+ <%= accordion id: 'hrsp_setting', title: ( t 'user.favorite' ) do %>
16
16
  ...
17
17
  <% end %>
18
18
  ```

1

質問内容の修正

2019/03/04 04:03

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -19,4 +19,25 @@
19
19
 
20
20
  みたいにかいてみたんですが定義の中の syntax error がなかなかとれません
21
21
  ブロック引数やハッシュ引数を受け取ってその中を展開したり yield したりする書き方はいくらでもでてくるのですが
22
- 他のメソッドにわたすにはどうかけばいいのでしょうか
22
+ 他のメソッドにわたすにはどうかけばいいのでしょうか
23
+
24
+ ### 追記
25
+
26
+ いろいろ削っていくうちにメソッド定義ではなく呼び出し側の I18n.t の書き方で syntax error になるみたいです
27
+
28
+ ```
29
+ accordion id: 'hrsp_setting', title: ( t 'user.favorite' ) do
30
+ end
31
+ ```
32
+ だと `syntax error, unexpected keyword_do, expecting keyword_end `
33
+ というエラーになり
34
+
35
+ ```
36
+ favorite = t 'user.favorite'
37
+ accordion id: 'hrsp_setting', title: favorite do
38
+ end
39
+ ```
40
+
41
+ だと大丈夫なようです
42
+
43
+ 解決方法はわかったのですが () で囲んだだけの↑の書き方だとなぜエラーになるのか理解できません