Я настраиваю календарь в приложении Work Effort, где мне нужно ограничить количество полей, отображаемых при добавлении нового события (тип события - EVENT). Я изменил форму EditWorkEffort в WorkEffortForms.xml, чтобы игнорировать поля, которые я не хочу отображать. Я использую атрибут use-when, чтобы проверить, работают ли ключи контекста workeffort, workEffortId равен нулю, а workEffortTypeId - СОБЫТИЯ. Если приведенные выше условия возвращают true, то я игнорирую поле, используя игнорируемый тег. В противном случае поля отображаются так, как они были до, т. Е. Когда создается новый рабочий резерв для новой задачи (тип события - TASK) или когда создается новое рабочее усилие (тип события - AVAILABLE).
Теперь приведенная выше логика дает мне желаемый результат в случае нового события (тип события - Событие). Но когда я добавляю новую задачу (тип события - Задача) или новое рабочее усилие (тип события - Доступно), тогда отображаются все поля сущности WorkEffort (что правильно), но макет искажается (что является моей проблемой ). Когда я проверил окончательно сгенерированный источник html, я вижу, что colspan = 4 добавляется в html td для соответствующих полей везде, где я использовал тег use-when.
Надеюсь, я объяснил свою проблему. Мне нужно исправить проблему с макетом. И также я делаю правильную вещь для своей настройки или есть лучший способ сделать это?