Size: a a a

pro.rb (Ruby/Rails / RU)

2020 September 15

VK

Vasyl Kuzmyk in pro.rb (Ruby/Rails / RU)
Segey E
вот так лучше
class Subscription
 def check_special_option
   p 1
 end

 %w[special_option usual_option].each do |key|
   check_method_name = "check_#{key}"
   next if respond_to?(check_method_name)

   define_method(check_method_name) do |*_opts|
     p 2
   end
 end
end

Subscription.new.check_special_option
Ты проверяешь на респонд строке
источник

VK

Vasyl Kuzmyk in pro.rb (Ruby/Rails / RU)
А не названию метода
источник

SE

Segey E in pro.rb (Ruby/Rails / RU)
сорян. Но всё равно не работает даже если проверять по названию
источник

SE

Segey E in pro.rb (Ruby/Rails / RU)
я воображаю, что пока класс первый раз не вызван, у него ещё не создаются никакие методы, и это нормальное поведение.
Но как же тогда мне делать?
источник

VK

Vasyl Kuzmyk in pro.rb (Ruby/Rails / RU)
Segey E
сорян. Но всё равно не работает даже если проверять по названию
А потому, что тебе нужен method_defined?
источник

VK

Vasyl Kuzmyk in pro.rb (Ruby/Rails / RU)
А не respond_to?
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Alex
Да, а теперь если руби оффлайн поставить? В нем будет поддержка?
А что значит руби оффлайн поставить? Ты контейнер без интернета билдишь?

rvm вроде при установке еще и нужные пакеты через пакетный менеджер ставит.
источник

SE

Segey E in pro.rb (Ruby/Rails / RU)
Vasyl Kuzmyk
А потому, что тебе нужен method_defined?
оо спасибо большое!
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Segey E
я воображаю, что пока класс первый раз не вызван, у него ещё не создаются никакие методы, и это нормальное поведение.
Но как же тогда мне делать?
Перепутал интциализацию тела класса и автозагрузку классов в рельсах?
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Или может я не так все понял.
источник

SE

Segey E in pro.rb (Ruby/Rails / RU)
Alex Ilizarov
Перепутал интциализацию тела класса и автозагрузку классов в рельсах?
да, это тоже перепутал, спасибо
источник

A

Alex in pro.rb (Ruby/Rails / RU)
Alex Ilizarov
А что значит руби оффлайн поставить? Ты контейнер без интернета билдишь?

rvm вроде при установке еще и нужные пакеты через пакетный менеджер ставит.
Именно
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Alex
Именно
А как ты его собираешься делать в оффлайне?
источник

A

Alex in pro.rb (Ruby/Rails / RU)
Alex Ilizarov
А как ты его собираешься делать в оффлайне?
Скачиваешь тар, конфигуришь и мэйк делаешь
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Alex
Скачиваешь тар, конфигуришь и мэйк делаешь
Ну все публичные докер образы заиочены под облако. Руками делать боль
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Да и rvm наверное под оффлайн не заточен?
источник

A

Alex in pro.rb (Ruby/Rails / RU)
Alex Ilizarov
Да и rvm наверное под оффлайн не заточен?
У рвм есть отдельная инструкция для установки оффлайн
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Alex
У рвм есть отдельная инструкция для установки оффлайн
Пакеты тоже через dpkg?
источник

A

Alex in pro.rb (Ruby/Rails / RU)
Alex Ilizarov
Пакеты тоже через dpkg?
Tar
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Alex
Tar
А зачем тар? Пакетный менеджер же есть
источник