新しいイベント (イベント タイプ - EVENT) を追加するときに表示されるフィールドの数を制限する必要がある Work Effort アプリケーションでカレンダーをカスタマイズしています。WorkEffortForms.xml の EditWorkEffort フォームを変更して、表示したくないフィールドを無視しました。use-when 属性を使用して、コンテキスト キーが workeffort であるか、workEffortId が null で、workEffortTypeId が EVENT であるかを確認しています。上記の条件が true を返した場合、ignored タグを使用してフィールドを無視しています。それ以外の場合、フィールドは以前と同じように表示されます。つまり、新しいタスク (イベント タイプ - TASK) に対して新しい労力が作成されているとき、または新しい労力 (イベント タイプ - AVAILABLE) が作成されているときです。
上記のロジックにより、新しいイベント (イベント タイプ - イベント) の場合に望ましい結果が得られます。しかし、新しいタスク (イベント タイプ - タスク) または新しい作業 (イベント タイプ - 利用可能) を追加すると、WorkEffort エンティティのすべてのフィールドが表示されます (これは正しい) が、レイアウトが歪む (これは私の問題です) )。最終的に生成された html ソースを確認すると、use-when タグを使用した場所に対応するフィールドの html td に colspan=4 が追加されていることがわかります。
問題文を説明できたことを願っています。レイアウトの問題を修正する必要があります。また、カスタマイズのために正しいことを行っていますか、それともそれを行うためのより良い方法はありますか?