"То есть один только этот паршиал рендерится 2700 мс?""
да
" "А вся остальная часть вьюхи — другие 2700?""
все остальное еще примерно 3сек
"Если удалить часть чекбоксов, то сколько времени будет рендериться?""
пропорционально количеству чекбоксов
"А если вообще убрать чекбоксы, оставить только голую форму?"
совсем на голую ругается, оставляю один инпут:
= f.simple_fields_for @category, @details do |f|
= f.input :used, label: ":", as: :integer
120мс
"А если саму форму убрать, оставить паршиал без формы?""
29мс
"@category, @details — ещё вот это меня смущает. Тут нужно первым параметром передавать название ассоциации, а вторым — объект модели""
я пробовал:
= f.simple_fields_for @category, @details do |f|
= f.simple_fields_for @category do |f|
= f.simple_fields_for @details do |f|
Рендерится 10 паршиалов. Итого страница отрендерилась за 5400мс из которых лейаут 2700 и урезаная до нельзя проблемная форма тоже 2700, остальные паршиалы по 1-20мс. Проблемы N+1 нет (или я ее не вижу в логах) так как связь has_one. Вижу 3 запроса по 1мс.
Не могу нагуглить ничего толкового по window.routes. Из ответа пока не понятно какой вектор, какой такой величины к какой точке которого объекта приложен))
Jeiwan: Ваше решение без simple_form? - насколько я понял. Оно на стандартных хелперах? Хотелось бы решения используя gem simple_form, т.к. используется он повсеместно в проекте. Но видимо, придется сделать исключение в этом месте...
не, туда такое не пойдет. Там нужен объект с методами name, id. Это может быть либо выборка из базы, либо нечто другое с такими методами (как в моем случае). Т.е. сам лабел для опшиона хелпер берет из метода name, как я ему указал :label_method => lambda { |i| i.name }, валуе из id, а дополнительные атрибуты бы еще брал. Как бы это указать...
чувствую, что это по теме, но пока не могу понять:You can also pass in your keys as options at runtime, for example:
recaptcha_tags :public_key => '6Lc6BAAAAAAAAChqRbQZcn_yyyyyyyyyyyyyyyyy'
and later,
verify_recaptcha :private_key => '6Lc6BAAAAAAAAKN3DRm6VA_xxxxxxxxxxxxxxxxx'
This option might be useful, if the same code base is used for multiple reCAPTCHA setups.
Т.е. он может создавать одну запись в таблице проектов и много в таблице задач. А нужно одну запись в таблице товаров и одну запись в одной из таблиц, соответствующей категории
кокон - не то. Насколько я смог понять он может генерить для главной модели одну или несколько вложенных моделей одного класса. Как там в примере: Форма проект. У ней можно создавать задачи. Несколько задач. Все они одного и того же класса. А мне нужно создавать одну из возможных моделей разных классов. Или я не так его понял.
зачем, нет. Могу привести пример из другой области. Создаешь объявление на авито - выбираешь категорию автомобилей. Кроме цены и описания (стандартных полей для всех объявлений) добавляются поля тип коробки передач и т.д. Потом выбираешь квартиры - коробка пропадает, появляется площадь туалета. А для модели объявления создается зависимая модель, характеризующая данную категорию объявлений. Здесь примерно тоже самое
цель - продолжение темы Как отрендерить partial из контроллера? У модели Item есть множество дочерних has_one моделей в каждой из которой находятся свойства, характерные только для выбранной категории Item. Т.е. в зависимости от Item.category решается какую дочернюю модель создать (остальные окажутся nil). Надеюсь понятно разъяснил. Сейчас изучу вашу наводку))
да
" "А вся остальная часть вьюхи — другие 2700?""
все остальное еще примерно 3сек
"Если удалить часть чекбоксов, то сколько времени будет рендериться?""
пропорционально количеству чекбоксов
"А если вообще убрать чекбоксы, оставить только голую форму?"
совсем на голую ругается, оставляю один инпут:
= f.simple_fields_for @category, @details do |f|
= f.input :used, label: ":", as: :integer
120мс
"А если саму форму убрать, оставить паршиал без формы?""
29мс
"@category, @details — ещё вот это меня смущает. Тут нужно первым параметром передавать название ассоциации, а вторым — объект модели""
я пробовал:
= f.simple_fields_for @category, @details do |f|
= f.simple_fields_for @category do |f|
= f.simple_fields_for @details do |f|
всегда работает)) Но на скорость не влияет