Decadent
18.03.2018
18:50:37
но обижаться грешно потом ?
Mikhail
18.03.2018
19:52:40
Google
Decadent
18.03.2018
19:53:44
Mikhail
18.03.2018
19:55:20
Во-вторых — это про литералы, хотя не всякий литерал в руби - примитив.
Decadent
18.03.2018
19:56:56
too deep, как по мне
вот скажи, будь добр, насколько часто осознание этих допущений играет какую-либо роль в твоем повседневном рабочем процессе?
No
18.03.2018
20:00:07
Сорри, не удержался, встрял )
Decadent
18.03.2018
20:00:56
No
18.03.2018
20:02:23
Я в последнее время любой разговор о кодинге вижу как дуэль
Mikhail
18.03.2018
20:02:35
Передача по значению/ссылке помогает читать код ежедневно, это основы знать, когда допустипо мутировать параметр, а когда нет. Сборка мусора - пригодилось однажды, тогда разбирался почему память течёт.
No
18.03.2018
20:02:55
Иногда даже кажется, что люди убивать готовы за код )
Decadent
18.03.2018
20:04:26
Darth
18.03.2018
20:24:52
Mikhail
18.03.2018
20:26:09
Google
Darth
18.03.2018
20:26:39
Для простоты так везде говорят, но большинство языков передают значение ссылки
По-моему только в си и плюсах реально передаются ссылки
Mikhail
18.03.2018
20:28:17
Ясно, я так понимаю, это особенности llvm. Мне с таким сталкиваться не приходилось, всё-таки не языки разрабатываю :)
Речь там шла о иммутабельности примитивов, если что.
Darth
18.03.2018
20:30:32
Есть ссылка А, которая указывает на объект С. И есть ссылка B, где B = A. Т.е. B указывает на объект C.
Через ссылки A и B мы можем менять объект С, но через ссылку B мы не можем менять ссылку А.
Т.е. если ссылку B изменить (перенаправить на другой объект), то с ссылкой А ничего не случится.
Это и есть передача ссылки по значению :)
Artem
19.03.2018
06:42:03
Factory добавлен в рельсы)), а как же сайдик?))
ну да, Factory крутой!
https://github.com/rails/rails/pull/32285
Andrey ?
19.03.2018
07:13:10
Artem
19.03.2018
07:19:45
@KappaProud теперь будет и для Factory
Andrey ?
19.03.2018
07:20:07
Artem
19.03.2018
12:13:48
https://vuejs-tips.github.io/cheatsheet/
Pavel
19.03.2018
12:15:52
когда начал использовать react native, не пожалел, что в свое время сделал выбор в сторону react, как view основы для наших проектов.
Артур
19.03.2018
12:18:50
Pavel
19.03.2018
12:20:25
я про радость вроде не говорил. Но в разработке проще. next.js + react/redux/saga на фронте + react-native+react/redux/saga на iOS/Android
очень удобно
Stanislav
19.03.2018
12:21:32
Artem
19.03.2018
12:22:29
повторюсь, есть подобное по Ruby
http://overapi.com/ruby
Pavel
19.03.2018
12:23:19
Интересно, но мы осознанно отделили репы iOS и Android.
Артур
19.03.2018
12:23:30
Pavel
19.03.2018
12:24:16
с формами у нас свои кастомные билдеры с json схемой и схемой валидации с сервера через dry-validation
на фронте не валидируем
Google
Artem
19.03.2018
12:24:53
немного холивара, как можно сравнивать React и Vue
это можно делать, если в корне отсутствует понимание смысла этих фреймворков
Pavel
19.03.2018
12:24:53
отправляем на сервер асинхронно, получаем ответ и меняем стейт формы
Stanislav
19.03.2018
12:40:51
v
19.03.2018
13:03:07
что нынче моднее для того, чтобы апи сервисов типа ютубчика опрашивать - httparty, faraday, еще чего?
ojab
19.03.2018
13:09:50
Net::HTTP
(на самом деле пофиг, httparty/faraday/excon)
они ничем не отличаются
v
19.03.2018
13:15:51
Александр
19.03.2018
13:39:20
Господа, поделитесь, как вы делаете поиск по названию(проекта, пользователя). Т.е. что бы он искал подстроку, сразу в запросе к базе данных
Т.е ищет человек "Вла", а ему отдает и "Владимир" и "Владислав"
ojab
19.03.2018
13:40:26
см. ransack/textacular
Alex
19.03.2018
13:40:56
Если на проекте есть elastic, то elastic.
v
19.03.2018
13:43:48
Aleksey
19.03.2018
13:55:55
Народ, вопрос на миллион (нет). Нужно получить от браузера какой-то уникальный идентификатор. Если юзер залогинен в хроме например, и хроме инкогнито - должно вернуть два разных идентификатора. Не важно что это будет, главное чтобы не менялось (поэтому версия браузера не подходит).
Vasiliy
19.03.2018
13:57:11
эм... кука?)
Aleksey
19.03.2018
13:57:46
ок, дополню вопрос в таком случае
есть OAuth2 сервер (доркипер), через него клиенты авторизуются в разные сервисы
соотв. у каждого сервиса своя кука, поэтому вариант не подходит )
к тому же в режиме инкогнито тоже будет своя, да
Google
v
19.03.2018
14:01:04
которая будет идентифицировать браузер
Aleksey
19.03.2018
14:02:27
разные домены
Vasiliy
19.03.2018
14:11:18
кастомный заголовок?
Aleksey
19.03.2018
14:18:21
не понимаю твою идею
Sergey
19.03.2018
14:59:49
Привед
Такой вопрос - у меня есть подзапрос, который я использую как alias и потом по нему делаю сортировку. Когда запрос возвращает какие-то данные - все работает норм, а когда нет - возникает ошибка column alias_name does not exist и в логах он выглядит вот так: alias_name AS alias_0
А когда все норм, тогда выглядит как подзапрос "SELECT ....... as alias_name"
примерный код:
.select("resources.*, (SELECT COUNT(*) FROM table WHERE column_id = resources.id) as alias_name")
.order("alias_name #{direction}")
Как сделать так, чтобы не было ошибки?
David
19.03.2018
15:00:39
Sergey
19.03.2018
15:02:04
поплющило разметку)
No
19.03.2018
15:56:32
Гайз, приветствую. Инвестигейчу этот вопрос уже в третий раз. Каждый раз в надежде, что это уже придумали. Нужно передать current_user как условие для eager load-а
Постоянно решаю эту пробелму по разному, зачастую костыльно. Пришла пора третьего инвестигейта. В очередной раз хочу сделать нормально
ActiveRecord
ojab
19.03.2018
16:01:28
А в чём проблема?
No
19.03.2018
16:05:34
Попытаюсь описать проблематику. Есть Item. Есть Reaction. Item has_many Reaction (с некоторым скоупом, из-за чего нельзя использовать counter_cache). Reaction - это либо лайк, либо дизлайк. Задача - сделать eager load реакций для Items только конкретного юзера.
Отдельным запросом после первого - абсолютно изи, но как всегда хочется какой-нибудь магии, которой нет
В стиле includes(reactions: { user_id: current_user.id })
Понятное, что вариант выше не сработает, просто привел как вариант
Roman
19.03.2018
16:10:40
не понимаю проблемы, current_user обычно объявляется как метод в application controller и дергается из любого контроллера
No
19.03.2018
16:11:33
Пытаюсь проще
1. Для has_many ассоциации ты можешь сделать includes(:records)
Google
No
19.03.2018
16:12:47
2. Хочется найти красивый путь заимлементить includes(:records) с пробросом параметра в includes (в моем конкретном случае - current_user)
Статьи в инете по прежнему говорят, что никто не знает такого способа
Roman
19.03.2018
16:13:29
а зачем пробрасывать current_user в includes?
No
19.03.2018
16:13:57
Кроме одной статьи с хаком в котором current_user магическим образом появляется на уровне класса в ActiveRecord, но это не то
Допустим, я хочу избежать N+1 когда делаю такой прелоад на списке
ojab
19.03.2018
16:15:35
суть в том что ты пытаешься это сделать в модели
что мешает это делать в контроллере?
No
19.03.2018
16:16:08
Абсолютно ничего
Так и делаю сейчас
Но инвестигейчу более rails-way способ )
ojab
19.03.2018
16:17:25
а чем это не rails_way способ?
No
19.03.2018
16:19:50
такой код потянет вложенный инклудс
вернее попытается потянуть
ojab
19.03.2018
16:20:23
.includes(:reactions).where(reactions: { user_id: current_user })
No
19.03.2018
16:21:09
если не ошибаюсь, оно в итоге фильтранет только айтемы, у которых есть реакция от текущего юзера
ojab
19.03.2018
16:25:04
потому что во-первых если тебе действительно нужен один sql-запрос — нужно юзать .eager_load, а во-вторых это к рельсам слабое отношение имеет, тебе просто нужен left join
(который должен сработать при .includes выше, просто по умолчанию юзается inner join)