
Hard
08.06.2017
18:39:56

ojab
08.06.2017
18:40:35
созданные юзеры валидны?

Hard
08.06.2017
18:40:55
да
2.3.3 :003 > a.valid?
=> true

Google

Hard
08.06.2017
18:42:58
Когда добавляю lastseen он не может callback обработать пишет якобы email is invalid
Я хочу посчитать активных юзеров другим способом
Что-бы обойти эту проблему

Vasiliy
08.06.2017
20:13:38
А у тебя вообще юзера сохраняет без гема?

Hard
08.06.2017
20:14:21

Vasiliy
08.06.2017
20:16:04
Ты Вики девайса читал?
Я потому что точно делал с пустым мылом и пеной через соц сетки
https://github.com/plataformatec/devise/wiki/How-To:-Allow-users-to-sign-in-with-something-other-than-their-email-address
В конце обрати внимание

Klim
08.06.2017
20:28:19
да он хочет "активных" юзеров получать, что бы это ни значило.

Vasiliy
08.06.2017
20:30:35
Ну там получается так что омниаух не даёт мыло юзера(скорее всего в конфигурации не запрашивается), юзер через социальную регается, а :database_autheticate валидирует юзера как раз в методе который по ссылке

Hard
08.06.2017
20:31:19
Просто думал найти вариант посчитать всех активных юзеров

Google

Hard
08.06.2017
20:31:51
Не юзая lastseen

Klim
08.06.2017
20:32:29
ты пробовал просто валидировать наличие мыла?

Vasiliy
08.06.2017
20:32:32
А чем он не нравится то?) Он кроме хука не добавляет ничего

Klim
08.06.2017
20:34:04
я имею ввиду без регэкспов и вот этого всего.

Hard
08.06.2017
20:34:17
он вроде говорит что мыло invlalid

Vasiliy
08.06.2017
20:35:31
Ты код ластсин смотрел?

Klim
08.06.2017
20:35:47
https://stackoverflow.com/questions/36795089/activerecordrecordinvalid-in-omniauthcallbackscontrollertwitter-validation-fa
посмотри ответ. там чувак закостылил валидацию при омниаут.

Ракета
08.06.2017
20:37:54
всем привет! Подскажите, кто-то умеет с мульти-таблицами работать в рельсе? У меня много динамических таблиц, и мне надо в зависимости от юзера выставлять для моделей нужную базу данных. Я знаю что может сделать ModelName.establish_connect(:db_params), но проблема в том, что это выставляется глобально, для следущего запроса ModelName будет соединена уже с таблицей из прошлого запроса. Разве что можно при каждом запросе делать ModelName.remove_connection для достоверности
если кто поможет, буду очень признателен
советом)
не знаю насколько корректен такой метод, который я описал
и при двух-трех параллельных запросах, не будет ли писец, когда каждый запрос выставляют свою таблицу ?))

Vasiliy
08.06.2017
20:40:29

ojab
08.06.2017
20:40:35
кидай такое длинное в gist

Vasiliy
08.06.2017
20:40:59
И возвращать в этом методе фэлс

Hard
08.06.2017
20:42:41
https://gist.github.com/HardNeal/77a136037d4ad681dabff1d7a7c59058
Закинул еще user.rb

Vasiliy
08.06.2017
20:44:58
Омниаух контроллер чёт у тебя хуйня какая-то

ojab
08.06.2017
20:47:04
всем привет! Подскажите, кто-то умеет с мульти-таблицами работать в рельсе? У меня много динамических таблиц, и мне надо в зависимости от юзера выставлять для моделей нужную базу данных. Я знаю что может сделать ModelName.establish_connect(:db_params), но проблема в том, что это выставляется глобально, для следущего запроса ModelName будет соединена уже с таблицей из прошлого запроса. Разве что можно при каждом запросе делать ModelName.remove_connection для достоверности
если кто поможет, буду очень признателен
советом)
не знаю насколько корректен такой метод, который я описал
и при двух-трех параллельных запросах, не будет ли писец, когда каждый запрос выставляют свою таблицу ?))
когда-то давно я такое наговнокодил, https://gist.github.com/ojab/103be904d3cd82b473cd3b871e0e3071, возможно оно ещё работает на up2date рельсах

Ракета
08.06.2017
20:47:32
а были какие-то проблемы с производительностью?

ojab
08.06.2017
20:47:33
всем привет! Подскажите, кто-то умеет с мульти-таблицами работать в рельсе? У меня много динамических таблиц, и мне надо в зависимости от юзера выставлять для моделей нужную базу данных. Я знаю что может сделать ModelName.establish_connect(:db_params), но проблема в том, что это выставляется глобально, для следущего запроса ModelName будет соединена уже с таблицей из прошлого запроса. Разве что можно при каждом запросе делать ModelName.remove_connection для достоверности
если кто поможет, буду очень признателен
советом)
не знаю насколько корректен такой метод, который я описал
и при двух-трех параллельных запросах, не будет ли писец, когда каждый запрос выставляют свою таблицу ?))
метод некорректен, establish_connect выставляется для всех тредов

Google

ojab
08.06.2017
20:48:00
так что его нужно выставлять для треда
для чего и был написан свой connection_handler

Klim
08.06.2017
20:49:20
мощно накодил, однако.

Ракета
08.06.2017
20:49:38
если выставлять вообще для всего ActiveRecord::Base в before_filter скажем, но при инициализации скидывать настройки
идея не очень?))
при инициализации каждого запроса
имел ввиду

ojab
08.06.2017
20:50:44
опять же, оно выставляется для класса
то есть для всех тредов сразу

Ракета
08.06.2017
20:51:09
понял

ojab
08.06.2017
20:53:49
если что-то будешь писать — глянь на тест 'with multiple threads' и проверяй подобным образом, в общем

Ракета
08.06.2017
20:54:51
т.е. в теории надо создавать подключение в отдельном треде при каждом запросе?
надо ли его потом закрывать, или он убивается когда запрос закончен?
потому что так сходу твой код не очень очевиден мне)

Alex
08.06.2017
20:56:52
Сменил дату (30 июня) на своем компе, сделал коммит и запушил в мастер. Чуваки, как думаете, лучше потереть этот коммит или можно оставить?
я не знаю, на что бы это могло повлиять, но на душе неспокойно ))

ojab
08.06.2017
20:58:59
потому что так сходу твой код не очень очевиден мне)
в gist'e выше для каждой БД делается в database.yml свой пул вида
address: &address
<<: *default
pool: 5
<% %w(ru gb us whatever).each do |country| %>
country_<%= country %>_<%= Rails.env %>:
<<: *address
database: country_<%= country %>_<%= Rails.env %>
<% end %>
и перед выполнением кода делается Address.country = country, которое выставляет thread-local variable в модели Address
из этой thread local переменной connection handler берёт название пула, из которого брать соединения до БД

Google

Ракета
08.06.2017
21:00:03
да вот по сути нет возможности закинуть все в database.yml, все базы данных имею одинаковое название, в конце меняется только ID, типа database_id5

ojab
08.06.2017
21:01:29
в database.yml ты можешь засунуть что угодно, но соответственно нужно будет поменять логику в Address и/или AddressConnectionHandler

Ракета
08.06.2017
21:02:54
Ок, спасибо за фидбек. Попробую разобраться с твоим методом


Marina
09.06.2017
09:11:59
#работа #remote
Здравствуйте, ищу Senior и Lead Ruby Developer для образовательного проекта. Это удалёнка с гибким рабочим графиком.
Salary 3-5K+bonuses+educational budget of $3K per a year
Technology stack
On the backend we use Ruby (just the lightweight Rails 5 API) and PostgreSQL. We use Docker for containerization. We run everything on Google Cloud Platform.
On the frontend we use ReactJS for the web app and React Native for the mobile app. Communication to the backend via JSON API. We use Pusher.
Requirements
Deep knowledge in architecture and Ruby back-end development.
Experience with PostgreSQL.
Exceptional general problem-solving skills.
Obsession with quality, attention to detail, great diligence.
Mastery of key development processes (e.g., scrum, CI, testing).
Ability to lead other exceptional developers (for Lead Ruby Developer position)
As a plus, some experience with React and/or mobile apps
Подробности в личных сообщениях


Igor
09.06.2017
10:47:05
ребят, кому то приходилось коннектить реакт фронт с рельсами по веб сокетам?

Admin
ERROR: S client not available

Igor
09.06.2017
10:48:26

Igor
09.06.2017
10:49:20
Да, но как подключиться через него со стороны реакта
там есть одна либа, она depricated
поэтому спрашиваю может кто то имел опыт

Vasiliy
09.06.2017
10:54:08
там есть для реакта вебсокет компонент

Ракета
09.06.2017
11:00:01
Я юзаю vanilla js
Полет нормальный
new WebSocket
И все

Igor
09.06.2017
11:01:01
https://github.com/mehmetkose/react-websocket
этот ?

Ракета
09.06.2017
11:01:43
Ты не слышно про vanilla js?
Не слышал *

Google

Igor
09.06.2017
11:03:00
хммм
нет
оно может помочь? можешь пару ссылок подбросить?

Ракета
09.06.2017
11:03:24
Понял
Да могу
Оно точно поможет
https://learn.javascript.ru/websockets
держи

Igor
09.06.2017
11:04:21
Аааа
смешно))))

Ракета
09.06.2017
11:04:36
)))

Igor
09.06.2017
11:04:41
спасибо))

Ракета
09.06.2017
11:05:30
Да правда там же все изи
Зачем либы епт
У меня приложения удалённые работали по сокетам с рельсой и все отлично было, около 40 приложений обслуживалось
Один сервером

Vasiliy
09.06.2017
11:06:51