Size: a a a

2020 September 01

E

Eugene in RubyRush
т. е. внутренняя лямбда сообщает через возвращаемое значение внешней функции, мол, хорош, заканчиваем
источник

E

Eugene in RubyRush
без вот этих хаков с break, который через голову прерывает выполнение метода
источник

E

Eugene in RubyRush
Эдем
Если б блок был бы, а не аргумент в виде лямбды, то пришлось бы что-то другое придумывать для того dom_id
всё равно не понял, объясни как пятилетнему :)
источник

Э

Эдем in RubyRush
У скоупа есть функционал в виде объявления методов, который на нём можно вызвать. То, что дефайнится под именем скоупа (метод класса модели) передаётся в виде аргумента. Т.е. блок скоупа зарезирвирован для этих методов. В документации это dom_id в качестве примера
источник

Э

Эдем in RubyRush
Если такого функционала не было бы, можно было бы просто передавать блок, как ты выше предложил
источник

E

Eugene in RubyRush
Эдем
У скоупа есть функционал в виде объявления методов, который на нём можно вызвать. То, что дефайнится под именем скоупа (метод класса модели) передаётся в виде аргумента. Т.е. блок скоупа зарезирвирован для этих методов. В документации это dom_id в качестве примера
понял

но можно было бы наоборот сделать - лямбдой передавать "расширения", а блоком "основную функциональность"
источник

Э

Эдем in RubyRush
У расширений имена есть. Может так проще организовать код просто
источник

E

Eugene in RubyRush
Эдем
У расширений имена есть. Может так проще организовать код просто
и в расширениях тебе return не нужен
источник

E

Eugene in RubyRush
а в самом коде скоупа - нужен
источник

DM

Dmitriy Tensei Malys... in RubyRush
вечер метапрограммирования
источник

V

Valery in RubyRush
Sergey
@eugzol а можешь прояснить что имеется в виду в скобках?
In non-lambda procs, break means exit from the method which the block given for. (and will throw LocalJumpError if invoked after the method returns);
Скорее всего статья написана не native English speaker.
Конкретно это предложение просто лишено смысла.
Вот как оно должно было бы выглядеть:
In non-lambda procs, break means an exit from the method which contents the procs.
источник

Э

Эдем in RubyRush
@ValeryVasilkov это же оф. дока вроде? Гоу PR запилить в оф.репу
источник

V

Valery in RubyRush
Эдем
@ValeryVasilkov это же оф. дока вроде? Гоу PR запилить в оф.репу
Я этого никогда не делал.
Первый раз у меня всегда занимает много времени.
Стоит ли этим заниматься прямо сейчас?
источник

V

Valery in RubyRush
Ilya
Ребят, какой есть способ проще проверить пару ключ-значение на нахождение в хеше?
Что-нибудь вроде:
ff_users[login]&.eql?(password)
источник

I

Ilya in RubyRush
Valery
Что-нибудь вроде:
ff_users[login]&.eql?(password)
Спасибо, опробую
источник
2020 September 02

mB

mr Bubble in RubyRush
Всем привет, есть вопрос!
pundit, cancancan или написать свое? Приложение не очень большое, не знаю есть ли смысл подтягивать еще один гем, для ролей юзеров используется rolify
источник

D

Denis in RubyRush
mr Bubble
Всем привет, есть вопрос!
pundit, cancancan или написать свое? Приложение не очень большое, не знаю есть ли смысл подтягивать еще один гем, для ролей юзеров используется rolify
пандит
источник

Э

Эдем in RubyRush
ЭкшнПолиси 😁
источник

mB

mr Bubble in RubyRush
Denis
пандит
Он на производительность повлияет?
источник

S

Sergey in RubyRush
mr Bubble
Всем привет, есть вопрос!
pundit, cancancan или написать свое? Приложение не очень большое, не знаю есть ли смысл подтягивать еще один гем, для ролей юзеров используется rolify
YouTube
Добро пожаловать, или посторонним доступ закрыт. Владимир Дементьев
Проблема ограничения прав доступа рано или поздно встаёт практически в каждом веб-приложении.
Популярные Ruby фреймворки предоставляют решения для большинства задач "из коробки", но некоторые важные аспекты разработки веб-приложений остаются незамеченными. Например, для функционала ограничения прав доступа мы — сами по себе. Обилие публичных библиотек лишь создаёт проблему выбора — серебряной пули не существует.

Несмотря на это, мы всё же можем выделить общие подходы к построению систем авторизации, а также популярные проблемы, с которыми сталкиваются разработчики, такие как: производительность, тестируемость и поддерживаемость кода, интеграция с клиентскими приложениями.

В этом докладе я хочу коснуться как теории, так и практики: от рассмотрения различных авторизационных моделей до непосредственно примеров проектирования, которые я накопил за время работы над Rails приложениями и которые легли в основу фреймворка Action Policy.
источник