(08-07-1394، 09:09 ق.ظ)ADMIN نوشته: [ -> ]بله باید خودتون دستی یا با کمک Gii بسازین و بعد تغییرات لازم رو اعمال کنید.
ممنون از پاسختون ... می دونم سرتون شلوغه ببخشید ...
استاد من فرم رو ساختم :
<?php
use yiihelpersHtml;
use yiiwidgetsActiveForm;
/* @var $this yiiwebView */
/* @var $model frontendmodelsUser */
/* @var $form ActiveForm */
?>
<div class="user-index">
<?php $form = ActiveForm::begin(); ?>
<?= $form->field($model, 'username') ?>
<?= $form->field($model, 'password') ?>
<div class="form-group">
<?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?>
</div>
<?php ActiveForm::end(); ?>
</div><!-- user-index -->
این هم مدل من که کد شما رو در اون ادغام کردم :
<?php
namespace frontendmodels;
use Yii;
use yiiwebIdentityInterface;
/**
* This is the model class for table "user".
*
* @property integer $id
* @property string $fullname
* @property string $username
* @property string $password
* @property string $email
* @property string $token
* @property integer $confirmed
*/
class User extends yiidbActiveRecord implements IdentityInterface
{
public $authKey;
public $token ;
/**
* @inheritdoc
*/
public static function tableName()
{
return 'user';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['username', 'password', 'email', 'token', 'confirmed'], 'required'],
[['confirmed'], 'integer'],
[['fullname', 'username', 'password', 'email', 'token'], 'string', 'max' => 30],
[['username', 'email'], 'unique', 'targetAttribute' => ['username', 'email'], 'message' => 'The combination of Username and Email has already been taken.']
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'id' => 'ID',
'fullname' => 'Fullname',
'username' => 'Username',
'password' => 'Password',
'email' => 'Email',
'token' => 'Token',
'confirmed' => 'Confirmed',
];
}
public static function findIdentity($id)
{
return $this->findOne($id);
}
public static function findIdentityByAccessToken($token, $type = null)
{
return $this->token == $token;
}
public function getId()
{
return $this->id;
}
public function getAuthKey()
{
return $this->authKey;
}
public function validateAuthKey($authKey)
{
return $this->authKey === $authKey;
}
}
این هم کنترلر من :
<?php
namespace frontendcontrollers;
use Yii;
use commonmodelsLoginForm;
use frontendmodelsPasswordResetRequestForm;
use frontendmodelsResetPasswordForm;
use frontendmodelsSignupForm;
use frontendmodelsContactForm;
use frontendmodelsUser;
use yiibaseInvalidParamException;
use yiiwebBadRequestHttpException;
use yiiwebController;
use yiifiltersVerbFilter;
use yiifiltersAccessControl;
/**
* Site controller
*/
class UserController extends Controller
{
/**
* @inheritdoc
*/
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'only' => ['logout', 'signup'],
'rules' => [
[
'actions' => ['signup'],
'allow' => true,
'roles' => ['?'],
],
[
'actions' => ['logout'],
'allow' => true,
'roles' => ['@'],
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'logout' => ['post'],
],
],
];
}
/**
* @inheritdoc
*/
public function actions()
{
return [
'error' => [
'class' => 'yiiwebErrorAction',
],
'captcha' => [
'class' => 'yiicaptchaCaptchaAction',
'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
],
];
}
/**
* Displays homepage.
*
* @return mixed
*/
public function actionIndex()
{
$model = new User();
return $this->render('index', [
'model' => $model,
]);
}
}
ولی وقتی لاگین می کنم، نه اروری می ده و نه کار می کنه باز بر می گرده به حالت اولش ...
این رو هم فراموش نکنم که رکورد تستی من با اطلاعات زیر هست :