LoginSignup
2
0

More than 5 years have passed since last update.

自動erb->slimのgem使って辛かった話

Posted at

erbファイルをガーッとslimにした(してもらった)ときにあった問題

http://qiita.com/mocchicc/items/abab4cdfac7b542742a6
この辺のやつ使って自動で変換したときに気をつけること。
気をつけることっていうか、あるある?

タグ内のrails変数

たとえばこういうの

<p class="<%= :hoge if hoge? %>">ほげ</p>

こうなる

|  <p class=
= :hoge if hoge?
| ">ほげ

正しくは

こうだね

p class=(:hoge if hoge?) ほげ

scriptタグ

<script>
  $(".hoge").addClass("pero");
</script>

こうなる

script
  |  $(".hoge").addClass("pero");

一応正しくは

こうであってほしい

coffee:
  $(".hoge").addClass "pero"

erbコード

<!-- 上の方に divのはじまりとかはあるよ -->
  <p><%= check_box :hoge, :pero, {class: "hoge", "ng-model"=>"hoge_pero"}, true, false %> <%= label :hoge, :pero do %>ほげぺろ<% end %></p>
</div>
<% end %>
<%= f.hidden_field :moga, "ng-value" =>  "moga", required: true %>
p
  | <ruby code="= check_box :hoge, :pero, {class: "hoge", "ng-model"=>"hoge_pero"}, true, false %> 
  = label :hoge, :pero do ">ほげぺろ</ruby></p>
  -     </div>
  -     </ruby>
  -     <%= f.hidden_field :moga, "ng-value" =>  "moga", required: true

つらい

/ 上の方でformとかdivとかのインデントがされてるとして
    p
      = check_box :hoge, :pero, {class: "hoge", "ng-model"=>"hoge_pero"}, true, false
      = label :hoge, :pero do
        | このまま会員登録をして進む
= f.hidden_field :moga, "ng-value" =>  "moga", required: true

こんな感じだったので直すのが大変だった。slim化gemがイケてなかったという話かもしれない。
ていうかファイル増える前にはやめのslim化を勧めます。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0