есть dropdown с ролями "admin, user"
Что лучше сделать, отдельную таблицу вида id role
или константы?
Как создать эти самые константы? и постом их вызывать?
константы или таблица?
-
- Сообщения: 32
- Зарегистрирован: 2015.02.06, 14:29
Re: константы или таблица?
Если ими набором ролей не нужно управлять (добавлять, удалять) без участия программиста, то хватит констант.
http://php.net/manual/ru/language.constants.syntax.php
http://php.net/manual/ru/language.constants.syntax.php
Re: константы или таблица?
все уже придумано за вас - RBAC хранит роли и связывает их с id пользователя
-
- Сообщения: 32
- Зарегистрирован: 2015.02.06, 14:29
Re: константы или таблица?
как во view вывести что то типа
через константы?
Код: Выделить всё
<select>
<option value="0" selected="selected">Pending</option>
<option value="1">Active</option>
<option value="-1">Inactive</option>
<option value="2">Dormant</option>
</select>
через константы?
Re: константы или таблица?
модель:
вью:
Код: Выделить всё
class MyModel extends \yii\db\ActiveRecord {
const STATUS_PENDING = 0;
const STATUS_ACTIVE = 1;
const STATUS_INACTIVE = -1;
const STATUS_DORMANT = 2;
public static function getStatuses()
{
return [
self::STATUS_PENDING => 'Pending',
self::STATUS_ACTIVE => 'Active',
self::STATUS_INACTIVE => 'Inactive',
self::STATUS_DORMANT => 'Dormant',
];
}
}
Код: Выделить всё
<?= Html::activeDropDownList($model, 'status', MyModel::getStatuses()); ?>
-
- Сообщения: 32
- Зарегистрирован: 2015.02.06, 14:29
Re: константы или таблица?
круто, спасибо
Re: константы или таблица?
надеюсь не нужно объяснять, что теперь по всему коду где нужно использовать какой то статус, нужно писать (пример)platon2010 писал(а):круто, спасибо
Код: Выделить всё
if($obj->status==MyClass::STATUS_INACTIVE) { ... }
Код: Выделить всё
if($obj->status==-1) { ... }