
trickster
28.02.2017
07:25:49
всем привет
задача такая, нужно загружать js только на конкретных страницах
пока решение кривое по моему мнению, инлайн жс во вьюхе с ифом, а в контроллерах коллбеки.
мб, есть красивые решение этой задачи :\

Google

I
28.02.2017
07:27:11
вебпак жи

trickster
28.02.2017
07:27:20
ага)

I
28.02.2017
07:27:20
бандлы для определенных страничек

ojab
28.02.2017
07:27:40
и callback'и зачем?

trickster
28.02.2017
07:28:11
причём тут javascript_include_tag?
он в лэйауте и всё

I
28.02.2017
07:28:36
ну этим тегом можно конкретный js подгрузить на конкретной странице

trickster
28.02.2017
07:28:39
коллбеки, чтобы знать на каких контроллерах

ojab
28.02.2017
07:28:47
он служит для вставки javascript'а и ничто не мешает использовать его во вьюхах
чтобы знать что на каких контроллерах?

trickster
28.02.2017
07:31:38
мне эвалить жс:)
:D

Google

trickster
28.02.2017
07:31:55
инклюд тэгом можно один файл подрубать?

I
28.02.2017
07:32:01
да

trickster
28.02.2017
07:32:14
это звучит получше
:d

ojab
28.02.2017
07:33:20
и не забыть добавить файлы в config.assets.precompile, чтобы sprockets их прекомпилировал и в production они тоже работали

I
28.02.2017
07:33:57
в assets.rb это сделай

trickster
28.02.2017
07:35:21
спасибо ребят

Karina
28.02.2017
07:42:46
ребята, как написать такой роут - у меня есть
resources :places, only: [:index, :show, :create]
но мне надо сделать так, чтобы в show у меня была возможность отправить post запрос.
руками это сделать не получается
post 'places/:name' => 'places#create'
Плюс ко всему у меня id не как число, а как string (не знаю имеет ли это какое-то значение или нет).
То есть мы попадаем в такой роут - places/some и из него нужно отправить post

I
28.02.2017
07:43:43
все в гайдах есть

trickster
28.02.2017
07:44:05
внезапно появилась новая проблема, можно ли интерполяцию юзать, вынося js в отдельный файл?
тоесть присоединять его include tagom и сделать так, чтобы он читался как инлайн в файле.

Karina
28.02.2017
07:45:56

I
28.02.2017
07:46:09
ребята, как написать такой роут - у меня есть
resources :places, only: [:index, :show, :create]
но мне надо сделать так, чтобы в show у меня была возможность отправить post запрос.
руками это сделать не получается
post 'places/:name' => 'places#create'
Плюс ко всему у меня id не как число, а как string (не знаю имеет ли это какое-то значение или нет).
То есть мы попадаем в такой роут - places/some и из него нужно отправить post
resources :places, only: [:index, :show, :create] do
post :places, on: :member
end

trickster
28.02.2017
07:46:33
:D

Karina
28.02.2017
07:51:21
make sense
еще можно так сделать, если тебе переменная из рубей нужна в js. во view делаешь
- js_var = ruby_variable.to_json
и в самом js вайле сделать так
var any = #{js_var}

I
28.02.2017
07:51:25
и не должно, кек

trickster
28.02.2017
07:51:39
аааа
мои глаза

Google

ojab
28.02.2017
07:51:50

trickster
28.02.2017
07:52:13
что-то мне уже начинает нравится вариант с коллбеком и инлайн джаваскриптом с ифом
:(

I
28.02.2017
07:52:28

ojab
28.02.2017
07:54:22
я так и не понял при чём здесь callback'и

trickster
28.02.2017
07:55:31
ну это пока в голове, в before action суёшь, что-нибудь, хоть банальную переменную, чекаешь на эту переменную во вьюхе, и запускаешь жс если это тот контроллер
у меня задача трекинг времени на страницах
и там current_user нужен, поэтому с инклюд тегом уже возникают проблемы

I
28.02.2017
07:57:11
мм
а на кой хер тебе там юзер - он у тебя в сессии уже есть, бери того, что в сессии

ojab
28.02.2017
08:02:23
и надо обрабатывать переходы через turbolinks, если оно не выключено

Dmitry
28.02.2017
08:02:51
а разве нельзя все это время с помощью каких-нибудь яндекс метрик/google получить?

ojab
28.02.2017
08:03:00
можно, ему уже советовали
а стоит её тянуть
из-за одной такой задачи

Dmitry
28.02.2017
08:04:13
там просто столько всего вылезет типа тех же турболинксов :) что задумаешься

trickster
28.02.2017
08:08:51
нету турболинков

Roman
28.02.2017
08:08:55
Народ, может кто знает коммьюнити, связанное с разработкой редмайна (плагины и прочее), не использование, а именно специфика разработки в редмайне. Не обязательно телеграм, что угодно. Буду крайне признателен

ojab
28.02.2017
08:13:12
у редмайна примерно нет коммьюнити, к сожалению

Karina
28.02.2017
08:14:11

Google

I
28.02.2017
08:14:27

Sergey
28.02.2017
08:15:39
привет,
scope :title_like, -> (title_like) { where("title ILIKE ?", "%#{title_like}%") }
вроде легально, но когда в title_like попадает '0%'
то получаеться "WHERE (title ILIKE '%0%%')" короче говоря в строке % не эскейпиться, подскажите как исправить плис.
плис

ojab
28.02.2017
08:16:15
юзай backtick'и для кода, чтобы не ломался
'`'

Sergey
28.02.2017
08:19:00
postgres
sanitize_sql_like помогло, сори

trickster
28.02.2017
08:23:43

Admin
ERROR: S client not available

trickster
28.02.2017
08:24:02
как мне достать айдишку юзера из сессии?

ojab
28.02.2017
08:26:33
см. current_user, не?
и пробросить его во вьюху, если только в контроллере доступен

trickster
28.02.2017
08:27:18
как мне его из джаваскрипта смотреть?

ojab
28.02.2017
08:27:32
зачем?

trickster
28.02.2017
08:27:44
потому-что у меня аякс запрос с отдельного файла

ojab
28.02.2017
08:28:02
Ты на сервере получаешь свой PUT и получаешь юзера, который послал этот PUT, из current_user

trickster
28.02.2017
08:29:18
как я могу послать запрос на сервер, если я не могу из джаваскрипта сказать ему, куда нужно делать запрос?

ojab
28.02.2017
08:30:33
А зачем тебе отдельные эндпоинты для каждого юзера и почему нельзя сделать один на всех?

Google

trickster
28.02.2017
08:31:19
это обновление каждого юзера, и он идёт на /users/1
хм
ты имеешь ввиду пробрасывать /users/:id

I
28.02.2017
08:33:12

trickster
28.02.2017
08:33:17
и в экшене уже присваивать айдишку?

I
28.02.2017
08:33:21
да

trickster
28.02.2017
08:33:23

ojab
28.02.2017
08:33:47

trickster
28.02.2017
08:35:20
да
ну это ведь дичь, нет?)

I
28.02.2017
08:35:55
гораздо круче иметь возможность послать кому угодно свои часы?)

trickster
28.02.2017
08:36:05

I
28.02.2017
08:36:19
о боги

trickster
28.02.2017
08:36:23
fага)

ojab
28.02.2017
08:36:24
elaborative: посылаешь запрос в /users/whatever (_без_ :id), на стороне сервера берёшь current_user и делаешь что нужно

I
28.02.2017
08:36:46
просто сделай кастомный экшен

trickster
28.02.2017
08:36:58

Karina
28.02.2017
08:44:54

trickster
28.02.2017
08:45:53
да всё разобрался, всё банально и глупо
))
айдишка мне вообще не нужна была
я вон кинул контроллер

Александр
28.02.2017
08:50:54
почему не update_attributes а update?