2012-04-25 3 views
1

Во многих приложениях пользователям разрешено видеть только определенные записи в таблице на основе разных вещей, таких как статусы, роли, рабочие процессы ... Есть ли способ указать в на уровне модели предложение where, которое всегда будет применяться везде, где используется модель. Или что было бы лучше всего использовать atk?Значение по умолчанию where, ограничение просмотра записи

Так, например, вы используете приложение для управления проектами. Вы хотите, чтобы пользователь видел только проекты, которые ему были назначены, и везде, когда время регистрации, создавая дефекты и т. Д., Он может видеть только те проекты.

+0

http://agiletoolkit.org/doc/modeltable/condition – romaninsh

ответ

2

Это зависит от того, как вы хотите проектировать свое приложение. Ограничение накладывается с помощью addCondition или setMasterField, поэтому, если вы поместите эти ограничения в модель init, вы получите то, что хотите. Вы можете создать базовую модель, которая будет получать доступ ко всем (для целей администратора) и использовать во внешнем приложении один или несколько дочерних классов с ограничениями в init. Это обычный способ убедиться, что модель ограничена определенной частью данных.

+0

Приложение в функции init отлично работает. Это то, что мне нужно. Спасибо. – zadof

+0

Это хорошо работает, но когда вы добавляете фильтр в сетку, предложение where, сгенерированное фильтром, добавляется с помощью OR, а затем делает фильтр, определенный с помощью addCondition бесполезным ... – zadof

Смежные вопросы