Различные вопросы по PHP и MySQL

242K
.
# ValekS (12.02.2015 / 00:14)
Скоротил на 1 букву... Могёшь.
Может просто сокращать длинные слова? Ну там permissions - perm или prss. Хотя второй вариант бредовый. Лучше perm или permis. Так более понятно о чём речь.
Дело не в краткости, а в числах, множественное/единственное. Я не сторонник сокращений и предпочитаю писать полные слова. Сокращения выглядят уродливо.
.
Rakovskiy, на твой пост (12.02.2015 / 00:37) отвечу, Ох уже этот Yii. Никогда мне он не нравился.
.
(\/)____o_O____(\/)
# Rakovskiy (12.02.2015 / 00:37)
Вот пример регистации

Модель:
[php]
<?php

namespace app\models;

use app\helpers\Time;
use yii\helpers\Html;
use \yii\db\ActiveRecord;
use yii\web\IdentityInterface;

class Users extend
ты еще это где то хочешь использовать? getTableName() ?
.
The Fast, Secure and Professional - Yii2
# ramzes (12.02.2015 / 00:31)
юзер_ убери и все. и так же понятно что за группы, хотя бы по имени класса
Я именую таблицы так: если эта таблица непосредственно относится к какому-то важному модулю типа forum, users, news то нужно дать им такой префикс. Если к примеру есть таблица файлов форума, то она естественно будет называться forum_files. Ну назову я таблицы

group захочу добавить модуль групп или сообществ, чё делать, как называть?
group_permissions тоже не стыковка если захочется добавить модуль групп.
.
The Fast, Secure and Professional - Yii2
# Koenig (12.02.2015 / 00:43)
ты еще это где то хочешь использовать? getTableName() ?
Из этого метода модель получает название таблицы к которой нужно делать запрос, можно обойтись без него, но тогда класс должен называться так же как и таблица. Ну вообще походу парсер должен считать класс UsersGroupPermissions как users_group_permissions нужно будет попробовать.
.
The Fast, Secure and Professional - Yii2
# reaper (12.02.2015 / 00:41)
Rakovskiy, на твой пост (12.02.2015 / 00:37) отвечу, Ох уже этот Yii. Никогда мне он не нравился.
А чё так?
.
(\/)____o_O____(\/)
Rakovskiy, да я про метод, который по сути лишний, солидарен с Рипом, навязывает
.
The Fast, Secure and Professional - Yii2
Да, работает.
.
# Rakovskiy (12.02.2015 / 00:43)
Я именую таблицы так: если эта таблица непосредственно относится к какому-то важному модулю типа forum, users, news то нужно дать им такой префикс. Если к примеру есть таблица файлов форума, то она ес
я че то не обратил внимания что речь о таблицах.
тогда и сокращать то не зачем.
.
Rakovskiy
The Fast, Secure and Professional - Yii2
Ну ещё такая фишка, что в модели выше где пример регистрации есть методы

findIdentity()
findIdentityByAccessToken()
getId()
getAuthKey()
validateAuthKey()

Они нужны чисто для авторизации, если моделька без регистрации, то будет иметь такой вид

<?php

namespace app\modules\admin\models;

use app\helpers\Time;
use yii\helpers\Html;
use yii\db\ActiveRecord;
use yii\web\IdentityInterface;

class Users extends ActiveRecord implements IdentityInterface{
    public $verifyCode;
    public $sex = 'm';

    public function rules(){
        return [
            [['login', 'password'], 'required', 'on' => 'reg'],
            ['login', 'string', 'min' => 3, 'max' => 25, 'tooShort' => 'Минимальная длина логина 3 сим.', 'tooLong' => 'Максимальная длина логина 25 сим.', 'on' => 'reg'],
            ['password', 'string', 'min' => 6, 'max' => 50, 'tooShort' => 'Минимальная длина пароля 6 сим.', 'tooLong' => 'Максимальная длина пароля 50 сим.', 'on' => 'reg'],
            ['login', 'unique', 'targetAttribute' => 'login', 'message' => 'Такой логин уже занят', 'on' => 'reg'],
            ['sex', 'in', 'range' => ['m', 'w'], 'on' => 'reg'],
            ['verifyCode', 'captcha', 'captchaAction' => 'index/captcha', 'on' => 'reg']
        ];
    }

    public function attributeLabels(){
        return [
            'login' => 'Логин',
            'password' => 'Пароль',
            'sex' => 'Ваш пол',
            'verifyCode' => 'Код с картинки'
        ];
    }

    public function beforeSave($insert){
        if ($this->isNewRecord){
            $this->time_reg = Time::real();
            $this->time_visit = Time::real();
            $this->time_total = 0;
        }

        $this->login = Html::encode($this->login);
        $this->password = \Yii::$app->security->generatePasswordHash($this->password);
        return parent::beforeSave($insert);
    }
}


Что намного лучше.
Всего: 7969