
Evgeniy
06.03.2017
12:41:55
Имелось в виду путь правильный сгенерился, если на страничке уже посмотреть?

Alex
06.03.2017
12:42:01
да
в исходном коде страницы

Александр
06.03.2017
12:42:57
в f12

Google

Alex
06.03.2017
12:43:21

Karina
06.03.2017
12:43:22
у меня css не меняется ваще от этого

Alex
06.03.2017
12:43:30
мне так проще через CTRL+U посмотреть

Karina
06.03.2017
12:43:48
ща
url(<%= asset_path('path/name-png.png' %>)

Evgeniy
06.03.2017
12:45:04
это уже в html так? О_о

Alex
06.03.2017
12:45:05
кажется я вижу проблему, а ты?

Karina
06.03.2017
12:45:29
name-png.png - это значение из t и оно верное

Alex
06.03.2017
12:45:31
а вообще ты пытаешься смешать erb и javascript
тогда как сначала erb обрабатывается, идет в браузер, потом уже javascript

Karina
06.03.2017
12:46:23

Alex
06.03.2017
12:46:53
??

Google

Evgeniy
06.03.2017
12:46:58
@Fedcomp Так можно.. Если весь этот js код написан в erb под тегом :javascript

Alex
06.03.2017
12:47:15
т.е ты сначала в javascript суешь var t

Evgeniy
06.03.2017
12:47:21
Karina У тебя весь этот код в erb шаблоне написан или в отдельно js файле?

Alex
06.03.2017
12:47:25
затем внутри ERB!! шаблона используешь переменную которой еще нет??
посмотри еще раз на код, там попытка смешать два языка.

Evgeniy
06.03.2017
12:48:05
А, да.. ты прав :)

Karina
06.03.2017
12:48:35

Alex
06.03.2017
12:48:55
<%= %> это артифакт erb

Karina
06.03.2017
12:49:01
как бы это тогда сделать

Evgeniy
06.03.2017
12:49:04
Karina Тут лучше asset_path поностью передавать в jss переменную и там уже конкатенировать с сгенерированным названием

Karina
06.03.2017
12:49:18
можно

Alex
06.03.2017
12:49:21
сильно зависит от того что такое calculating

Evgeniy
06.03.2017
12:50:34
типа:
var t = calculating + '.png'
var path = '<%= asset_path("path") %>';
$(this).css({'background': "url("+path+ t+")"})
как-то так..

Karina
06.03.2017
12:50:53

Alex
06.03.2017
12:51:02
you don't say ...
ты либо имеешь нужные данные на стороне бэкенда, либо отдаешь это полностью на сторону js

k
06.03.2017
12:55:09
#{asset_path('path')} сделай

Alex
06.03.2017
12:55:43
Павел там на фронте вроде высчитывается нужная картинка

k
06.03.2017
12:55:52
она будет работать
если в блоке :javascript

Google

k
06.03.2017
12:56:16
через #{} хамла вызовется руби код

Alex
06.03.2017
12:56:18
что будет обеспечивать работу asset_path ?
на стороне js
там 'path' вычисляется на стороне javascript

Evgeniy
06.03.2017
12:57:51
вот так работает
:javascript
var t = 'some.png';
var path ='#{asset_path("path")}';
$('body').css({'background': "url("+path+ '/' + t+")"})

k
06.03.2017
12:58:17
;)
сгенерится в
<script>
var 1 = "AAAA"
</script>

Alex
06.03.2017
12:59:15
я знаю во что это сгенерится

k
06.03.2017
12:59:23
ну а че тогда вопросы)

Alex
06.03.2017
12:59:59
до этого схема была:
`
javascript:
var t = "stuff"
#{asset_path(t)}

Evgeniy
06.03.2017
13:00:03
Вопрс в том что там был разрыв интерполяции переменной вычесляемой в js

Alex
06.03.2017
13:00:09
оно так работать не будет, т.к на стороне erb переменной t еще нет

k
06.03.2017
13:00:24
так да, не будет

Karina
06.03.2017
13:06:14
мнда

Кøе-ктø Геннадьевич
06.03.2017
13:06:40
букву пропустила

Karina
06.03.2017
13:06:50
и не одну

Evgeniy
06.03.2017
13:07:57
Karina заработало?

Google

Karina
06.03.2017
13:08:04
неа

Evgeniy
06.03.2017
13:08:47
а должно было..
:javascript
var t = calculated + '.png';
var path ='#{asset_path("path")}';
$(this).css({'background': "url("+path+ '/' + t+")"})
посмотри что у тебя в html генерируется из этого кода
У меня работает вроде

Karina
06.03.2017
13:11:51

Alex
06.03.2017
13:12:21
ага, digest'ы не подсасываются.
значит надо список картинок с бэкенда отдавать
собственно я потому выше и говорил что оно в таком виде работать не будет.

Evgeniy
06.03.2017
13:12:59
угу.. либо no stupid digest assets вроде гем есть который копии делает без digest
хотя это конечно костыль
https://github.com/alexspeller/non-stupid-digest-assets

Admin
ERROR: S client not available

Karina
06.03.2017
13:14:26

Alex
06.03.2017
13:14:43
а в css прописать это не с сервера список отдать?

Karina
06.03.2017
13:15:10
ну в каком-то смысле, да

Victor
06.03.2017
13:18:00
а вообще, да, я +1 за то, чтоб только классы ставить, все эти приседания с генерацией путей ассетов на лету - это себя в ногу стрелять

Karina
06.03.2017
13:20:34
так-то оно так, но когда прописывать больше 20 классов, это геморрой

Alex
06.03.2017
13:20:53
генерируй css через erb

Victor
06.03.2017
13:23:12
+1

Karina
06.03.2017
13:23:38
што это? кто это?

Google

Victor
06.03.2017
13:24:13
google it

Alex
06.03.2017
13:26:12
не только шаблон страницы может через него генериться, но и js и css и т.д
даже картинки.

Karina
06.03.2017
13:27:26
ок, спасибо

Alex
06.03.2017
13:27:40
поидее его прекомпилировать можно.
т.е чтобы на проде он в виде erb каждый раз на лету не собирался

Victor
06.03.2017
13:28:35
хм, кто ж в проде ассеты компилит? этого лучше 100% не делать

Alex
06.03.2017
13:29:03
это очевидно. Но вроде в каком то туторе юзали динамический js

Victor
06.03.2017
13:29:15
я имею в виду динамическую компиляцию. Все ассеты должен отдавать nginx или что там заместо него

Alex
06.03.2017
13:29:32
это очевидно

Victor
06.03.2017
13:30:13
тогда поясни
> поидее его прекомпилировать можно.
непонятно, что ты имел в виду

Alex
06.03.2017
13:30:59
объясняю, в каком то туторе видел что юзали динамический js.coffee.erb, но уже не помню сути.
скорее всего, думая об этом сейчас, оно было связано с remote: true
а не как обычный ассет

Victor
06.03.2017
13:33:29
эм, он же все равно скомпиленный будет, это же обычная вьюшка, нет?
а, стой, да, параметрами можно менять его

Alex
06.03.2017
13:34:10
js.coffee.erb? может быть вполне себе динамическим шаблоном в remote: true насколько я помню
также как и haml/slim/erb

Victor
06.03.2017
13:34:36
ага
если это маленький кусочек, то да, рабочий вариант

Demyan
06.03.2017
17:11:52
Ребятки кто нить комменты делал? Какой гем самый норм? желательно мультицирование чтоб было.