2017-01-18 2 views
0

mit habe ich einen img Tag als html und ich möchte es in erb verwenden:"unexpected '}', erwartet =>" während Attributen

<img src="images/Slider/app.png" alt="" width="636" height="441" data-ww="['600px','500px','400px','200px']" data-hh="['338px','281px','225px','113px']" data-no-retina> 

mein HTML-erb-Code ist:

<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], no-retina } %> 

aber ich bekomme Syntaxfehler: unexpected '}', expecting =>

+0

'no-retina' ist kein Schlüsselwertpaar. Es kann nicht in der Hash – Santhosh

+0

sein, es aus dem Hash zu entfernen funktioniert nicht. –

Antwort

1

Rails erlaubt Dash-Case nicht als Hash-Schlüssel. Daher schlägt die Syntax fehl, wenn versucht wird, no-retina zu analysieren.

Sie sollen seitliche Saiten verwenden, wenn Sie einen Bindestrich-Fall als Schlüssel

<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], 'no-retina': true } %> 

In diesem speziellen Fall (image_tag Helfer und Datenattribute) haben wollen, jedoch ist Rails intelligent genug, um Sie die Recht HTML, wenn Sie nur uderscores verwenden:

<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], no_retina: true } %> 

auch wenn Sie an der image_tag Dokumentation sieht, werden Sie sehen, dass Sie size Höhe und Breite angeben können. Mit einiger Code-Stil Bereinigung ist es das, was viel besser aussieht:

<%= image_tag "/Slider/app.png", size: "636x441", data: { ww: ['600px','500px','400px','200px'], hh: ['338px','281px','225px','113px'], no_retina: true } %> 
1

Sie können es brechen durch - und Nest es

<%= image_tag "/Slider/app.png", data: { no: { retina: true } } %> 
Verwandte Themen