Size: a a a

Saint P Ruby Community

2021 February 05

AG

Alexander G in Saint P Ruby Community
Anton
к созжаление не работает так. Зависимость доступна только в блоке rule, а в блоке param не доступна. Я пытаюсь сделать чтобы схема была динамическая
динамическая в зависимости от внешнего параметра какого-то?
а там не подойдет 2 разных схемы описать и использовать их там, где надо?
источник

SM

Sergei Maximov in Saint P Ruby Community
Предлагаю сделать phpapi.com, на котором будет дефолтная рельсовая страничка
источник

A

Anton in Saint P Ruby Community
Alexander G
динамическая в зависимости от внешнего параметра какого-то?
а там не подойдет 2 разных схемы описать и использовать их там, где надо?
можно, но их не две и я бы хотел использовать DI ну чтобы в контракте была абстрация а не реализация
у меня есть отдельный справочник где для разных страниц сконфигурированны разные наборы контентных блоков
так вот я бы хотел передавать в контракт соответсвующий набор блоков и получать необходимую схему валидации
источник

AG

Alexander G in Saint P Ruby Community
звучит как описание схемы в рантайме. Но это же дефолтное поведение )
источник

AG

Alexander G in Saint P Ruby Community
UserSchema = Dry::Schema.Params do
 required(:name).filled(:string)
 required(:email).filled(:string)

 required(:age).maybe(:integer)

 required(:address).hash do
   required(:street).filled(:string)
   required(:city).filled(:string)
   required(:zipcode).filled(:string)
 end
end
источник

AG

Alexander G in Saint P Ruby Community
может быть подойдет именно так?
не знаю, что там у тебя, но вот что-то вроде такого псевдокода

page = Dry::Schema.Params do
 required(:block1).filled(BlockType1)
end
источник

AG

Alexander G in Saint P Ruby Community
ну и потом генератор схем на основе конфига как-то сделать
источник

A

Anton in Saint P Ruby Community
Alexander G
ну и потом генератор схем на основе конфига как-то сделать
вот в этом и вопрос, потому что надо зависимость передать чтобы построить схему
то есть я вот хояу перейти от верхнего кода к нижнему как-то
источник

AG

Alexander G in Saint P Ruby Community
а если вызывать params { } из BlockResolver, а не наоборот?
источник

AG

Alexander G in Saint P Ruby Community
еще можно спросить @davydovanton
вдруг в hanami решали такую задачу (типа схема валидации по схеме таблицы)
источник

A

Anton in Saint P Ruby Community
он template не видит ни в блоке params ни снаружи params
источник

A

Anton in Saint P Ruby Community
вот например
источник

A

Anton in Saint P Ruby Community
источник

A

Anton in Saint P Ruby Community
хм, а может есть какой-то метод для получения options?
источник

NB

Nikita Bogomolov in Saint P Ruby Community
Anton
хм, а может есть какой-то метод для получения options?
источник

NB

Nikita Bogomolov in Saint P Ruby Community
источник

RI

Rustam Ibragimov in Saint P Ruby Community
Gleb Grishakov
А правда, что за дичь?
видимо, кто-то прикололся или просто забил под себя домен. возможно, прикололись над оригиналом https://rubyapi.org
источник

RI

Rustam Ibragimov in Saint P Ruby Community
но я не в курсе :)
источник

SK

Svyatoslav Kryukov in Saint P Ruby Community
Anton
вот в этом и вопрос, потому что надо зависимость передать чтобы построить схему
то есть я вот хояу перейти от верхнего кода к нижнему как-то
Если я правильно помню, аст там билдится при инициализации, так что такой динамической штуки добиться будет очень сложно
источник

AG

Alexander G in Saint P Ruby Community
ну вот что-то типа такого не подходит?
источник