Size: a a a

Ruby, Rails, Hanami | dry-rb

2020 December 07

S

Sergey in Ruby, Rails, Hanami | dry-rb
Ildar
Я так вижу себе проблему и в зависимости от того что требуется два похожих вариант решения.
1. у пользователя несколько актуальнуых токенов (одновременно две (или более) сессии могут быть активны). Тогда user has many token. В таблице tokens не уникальный индекс на user_id (для ускорения выборки) и отдельный уникальный индекс на токен (токен же должны быть уникальный среди всех пользоватлей?)
2. У пользователя может быть только один актуальнй токен (одновременно у пользователя может быть только одна активная сессия). Тогда user has one token. Уникальный индекс на user_id и отдельный уникальный индекс на токен.
Воторой вариант, спасибо, попробую сегодня его
источник

VS

Viacheslav Stepanov in Ruby, Rails, Hanami | dry-rb
Ildar
почему бы и не блокировать всю таблицу для записи?
А вообще индекс на уникальность (именно индекс, а не валидация) должен спасать. Нужно ловить только ошибку эту, и пересоздавать токен. Но самый простой враиант в лоб это блокировка таблицы на запись.
блокировка все таблицы работает, пока нагрузка не очень большая, таблица не очень большая. В какой-то момент у нас начала блокировка занимать около секунды - переделали на redis lock решение
источник

I

Ildar in Ruby, Rails, Hanami | dry-rb
Viacheslav Stepanov
блокировка все таблицы работает, пока нагрузка не очень большая, таблица не очень большая. В какой-то момент у нас начала блокировка занимать около секунды - переделали на redis lock решение
согласен. зависит от нагрузки. Не очень понятна сперва была постановка задачи и объем данных и запросов. Индексы в данном случае лучше.
источник

)

) in Ruby, Rails, Hanami | dry-rb
аташка
Где нужно писать код, програмировать, например я знаю один язык, куда писать то?  без сарказма кто может дать ответ?
vs code
источник

O

Odebe in Ruby, Rails, Hanami | dry-rb
Привет.
У меня есть гемчик написанный ради мемов (хотел попробовать реализовать интерфейс как у ду-нотации из драя через yield)
https://github.com/Odebe/sorta-transactions

Как вам идея в целом? Пока так и не довелось нигде использовать.
источник

S

Sergey in Ruby, Rails, Hanami | dry-rb
Небольшой нубский вопрос. Подскажите отличие Hash["key"] и Hash[:key]

Когда использую сторонние зависимости, иногда бывает, что отсутствуют ключи через :key. С чем это связано и в чем суть такого синтаксиса?

Если что-то не так понял, то ткните меня в конкретное название такой нотации. спасибо!)
источник

SS

Sergii Serogin in Ruby, Rails, Hanami | dry-rb
в первом случае индекс - строка, во втором - символ.
hash.symbolize_keys!    переведет все индексы (только первого уровня) из строк в символы
источник

AG

Alexander G in Ruby, Rails, Hanami | dry-rb
кажется, идея с символами была не самой удачной в руби )
источник

AG

Alexander G in Ruby, Rails, Hanami | dry-rb
надо было просто синтаксический сахар сделать для замороженных строк, может быть 🤷‍♂️
источник

S

Sergey in Ruby, Rails, Hanami | dry-rb
Sergey
Небольшой нубский вопрос. Подскажите отличие Hash["key"] и Hash[:key]

Когда использую сторонние зависимости, иногда бывает, что отсутствуют ключи через :key. С чем это связано и в чем суть такого синтаксиса?

Если что-то не так понял, то ткните меня в конкретное название такой нотации. спасибо!)
В качестве ключа может быть любой объект руби. Так как ‘key’ & :key разные объекты, то сработает только один из ключей
источник

OA

Ortemy Alexandrovich in Ruby, Rails, Hanami | dry-rb
Sergey
Небольшой нубский вопрос. Подскажите отличие Hash["key"] и Hash[:key]

Когда использую сторонние зависимости, иногда бывает, что отсутствуют ключи через :key. С чем это связано и в чем суть такого синтаксиса?

Если что-то не так понял, то ткните меня в конкретное название такой нотации. спасибо!)
Есть еще ActiveSupport::HashWithIndifferentAccess, в котором можно через hash[:key] и hash[‘key’] обращаться
источник

S

Sergey in Ruby, Rails, Hanami | dry-rb
Ого вас тут песиков
источник

S

Sergey in Ruby, Rails, Hanami | dry-rb
А какое название у объекта :key?
источник

S

Sergey in Ruby, Rails, Hanami | dry-rb
Или известно только тому кто его засеттил и оно может отличаться?
источник

SS

Sergii Serogin in Ruby, Rails, Hanami | dry-rb
символ же
источник

SS

Sergii Serogin in Ruby, Rails, Hanami | dry-rb
источник

S

Sergey in Ruby, Rails, Hanami | dry-rb
Sergey
А какое название у объекта :key?
источник

S

Sergey in Ruby, Rails, Hanami | dry-rb
Понял, спасибо
источник

ML

Michael Lutsko in Ruby, Rails, Hanami | dry-rb
Sergey
Или известно только тому кто его засеттил и оно может отличаться?
к примеру есть хеш

params = {
 foo: ''text 1",
 'bar' =>  "text 2"
}

получить их значения можно так

params[:foo]
и
params['bar']
источник

ML

Michael Lutsko in Ruby, Rails, Hanami | dry-rb
но ты не можешь получить params[:bar] передав ключ как символ, так как в хеше этот ключ объявлен как строка


и не можешь получить params['foo'] передав ключ как строку так как в хеше он объявлен как символ
источник