Я пытаюсь отобразить поле в режиме редактирования в отдельности, основываясь на значении поля в userdetails.
Пример: для пользователя can_add_no
будет в деталях пользователя, если он отмечен, чем этот конкретный пользователь может добавить quote_extra_no
в quote
модуль.
Я попробовал следующее. Добавлена зависимость для модуля цитаты для поля.
$dictionary['Quote']['fields']['quote_extra_no'] = array (
'audited' => true,
'calculated' => false,
'duplicate_merge' => 'disabled',
'duplicate_merge_dom_value' => '0',
'importable' => 'true',
'len' => '255',
'massupdate' => false,
'merge_filter' => 'disabled',
'name' => 'quote_extra_no',
'no_default' => true,
'reportable' => true,
'required' => false,
'size' => '50',
'source' => 'custom_fields',
'studio' => 'visible',
'type' => 'varchar',
'unified_search' => false,
'vname' => 'LBL_EXTRA_REF',
'dependency' => 'equal(related($assigned_user_link,"can_add_no"),"1")',
);
Также добавлено поле в Editview. Но это не работает. Если текущий пользователь can_add_no
установлен или флажок отмечен. Он может редактировать quote_extra_no
в editview цитаты.
Как я могу достичь функциональности, поскольку зависимость не помогает мне это сделать.
Есть два способа сделать это, так как вы должны иметь связь между обоими модулями.
Используя зависимость:
равный (связанный ($ related_field_name, «can_add_no»), «1»)»
В record.js напишите метод в этом методе, вызовите API для canadd_no
и в соответствии с этим шоу скрыть поле.
Пример вызова API:
app.api.call('read', app.api.buildURL(this.model.get('_module'), 'read', {id: this.model.get('id')}), null,
{
success: function(data) {
your costume code to hide
}
},
});
Других решений пока нет …