Size: a a a

2019 December 22

Aliaksandr ¯\_(ツ)_/¯ in pro.ruby
      if ! EmailValidator.allowed?(value)
       record.errors.add(attribute, I18n.t(:'user.email.not_allowed'))
     else
       #good!
     end

так? спасибо
источник

AI

Alex Ilizarov in pro.ruby
Aliaksandr ¯\_(ツ)_/¯
подскажите как эту запись заменить на if

      unless EmailValidator.allowed?(value)
       record.errors.add(attribute, I18n.t(:'user.email.not_allowed'))
     end
А надо?
источник

VK

Vasya Kuzmik in pro.ruby
Aliaksandr ¯\_(ツ)_/¯
      if ! EmailValidator.allowed?(value)
       record.errors.add(attribute, I18n.t(:'user.email.not_allowed'))
     else
       #good!
     end

так? спасибо
Получается так, но мне первый вариант больше нравится
источник

u

unkmas in pro.ruby
Aliaksandr ¯\_(ツ)_/¯
      if ! EmailValidator.allowed?(value)
       record.errors.add(attribute, I18n.t(:'user.email.not_allowed'))
     else
       #good!
     end

так? спасибо
Лучше

if allowed?
do_good
else
do_bad
end

Будет чуть лучше читаться. Но не принципиально
источник

u

unkmas in pro.ruby
А, или у тебя обработки успешного сценария вообще нет? Но зачем тогда else?
источник

AK

Andrey Kolnoochenko in pro.ruby
unkmas
А, или у тебя обработки успешного сценария вообще нет? Но зачем тогда else?
Вообще есть разные воззрения на else ветку.
Кто-то старается её избегать везде где можно. Например давать переменным дефолтные значения, которые были бы в else ветке, а в if их переопределять.
Кто-то говорит, что ветка else должна быть всегда, пусть даже пустая (но с комментарием что так и должно быть) – это будет явно указывать, что этот вариант учтён при написании кода.
Кто-то говорит, что условие в if должно описывать "нормальную" работу, а в elsif/else уже идти обработка ошибок.
Кто-то говорит что в первой ветке должно быть больше кода, чем в else.
Короче, много эстетствующих людей есть
источник

u

unkmas in pro.ruby
Про пустую ветку впервые слышу, звучит бредово несколько
источник

u

unkmas in pro.ruby
Ни разу такого не видел
источник

МВ

Максим Вейсгейм in pro.ruby
ну это наверное кто то однажды понаписал так элсов случайно
источник

МВ

Максим Вейсгейм in pro.ruby
а потом сидел придумывал как оправдаться чтоб не удалять
источник

u

unkmas in pro.ruby
Ну надо просто clean code по ебалу таким
источник

u

unkmas in pro.ruby
И збс
источник

AK

Andrey Kolnoochenko in pro.ruby
unkmas
Про пустую ветку впервые слышу, звучит бредово несколько
Ну, где-то читал, не помню где.
источник

Aliaksandr ¯\_(ツ)_/¯ in pro.ruby
как работает этот метод если в него не передается значение?
    def self.email_regex   
     /\A[a-zA-Z0-9!#\$%&'*+\/=?\^_`{|}~\-]+(?:\.[a-zA-Z0-9!#\$%&'\*+\/=?\^_`{|}~\-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$\z/
     
   end


эта строка возвращает true или false ?
источник

YN

Yevhen Nakonechnyi in pro.ruby
он возвращает регулярку
источник

YN

Yevhen Nakonechnyi in pro.ruby
email_regex =~ "my@email"
источник
2019 December 23

АЛ

Андрей Леонтьев in pro.ruby
Так вы не расширяете, вы переопределчяете. Для расширения есть alias_method_chain
источник

Aliaksandr ¯\_(ツ)_/¯ in pro.ruby
А как переопределить контролер?
class ::UsersController
   
   prepend InviteMailerEventExtension  // и сюда писать весь этот код? https://github.com/discourse/discourse/blob/6ab12ed96b66933913da4be4c98f556fea516350/app/controllers/users_controller.rb
 end
источник

Aliaksandr ¯\_(ツ)_/¯ in pro.ruby
Aliaksandr ¯\_(ツ)_/¯
А как переопределить контролер?
class ::UsersController
   
   prepend InviteMailerEventExtension  // и сюда писать весь этот код? https://github.com/discourse/discourse/blob/6ab12ed96b66933913da4be4c98f556fea516350/app/controllers/users_controller.rb
 end
@HexJS @Alyask_a
Хелпаните если несложно
источник

Aliaksandr ¯\_(ツ)_/¯ in pro.ruby
каом метод выполняется перед
create
в RoR ?
источник