* @throws InvalidConfigException if the table for the AR class does not exist. */ public static function getTableSchema() { $tableSchema = static::getDb() ->getSchema() ->getTableSchema(static::tableName()); if ($tableSchema === null) { throw new InvalidConfigException('The table does not exist: ' . static::tableName()); } return $tableSchema; } /** * Returns the primary key name(s) for this AR class. * The default implementation will return the primary key(s) as declared * in the DB table that is associated with this AR class.
* Returns the list of all attribute names of the model. * The default implementation will return all column names of the table associated with this AR class. * @return array list of attribute names. */ public function attributes() { return array_keys(static::getTableSchema()->columns); } /** * Declares which DB operations should be performed within a transaction in different scenarios. * The supported DB operations are: [[OP_INSERT]], [[OP_UPDATE]] and [[OP_DELETE]], * which correspond to the [[insert()]], [[update()]] and [[delete()]] methods, respectively.
public static function tableName() { return 'company'; } public function attributes() { // add related fields to searchable attributes return array_merge(parent::attributes(), [ 'createdByUserProfile.fullName', 'updatedByUserProfile.fullName', ]); } /**
* Returns a value indicating whether the model has an attribute with the specified name. * @param string $name the name of the attribute * @return bool whether the model has an attribute with the specified name. */ public function hasAttribute($name) { return isset($this->_attributes[$name]) || in_array($name, $this->attributes(), true); } /** * Returns the named attribute value. * If this record is the result of a query and the attribute is not loaded, * `null` will be returned.
* This method is overridden so that AR attributes can be accessed like properties. * @param string $name property name * @param mixed $value property value */ public function __set($name, $value) { if ($this->hasAttribute($name)) { if ( !empty($this->_relationsDependencies[$name]) && (!array_key_exists($name, $this->_attributes) || $this->_attributes[$name] !== $value) ) { $this->resetDependentRelations($name); }
if (Yii::$app->user->can(Yii::$app->name.'.index.admin')){ $this->layout = 'main'; }else{ $this->layout = 'index'; } $searchModel = new CompanySearch(); $searchModel->deleted = 0; $dataProvider = $searchModel->search(Yii::$app->request->queryParams); $query = $dataProvider->query; $query->andWhere(['person.data_type' => $dataType]);
$args = $this->controller->bindActionParams($this, $params); Yii::debug('Running action: ' . get_class($this->controller) . '::' . $this->actionMethod . '()', __METHOD__); if (Yii::$app->requestedParams === null) { Yii::$app->requestedParams = $args; } return call_user_func_array([$this->controller, $this->actionMethod], $args); } }
} $result = null; if ($runAction && $this->beforeAction($action)) { // run the action $result = $action->runWithParams($params); $result = $this->afterAction($action, $result); // call afterAction on modules foreach ($modules as $module) { /* @var $module Module */
$parts = $this->createController($route); if (is_array($parts)) { /* @var $controller Controller */ list($controller, $actionID) = $parts; $oldController = Yii::$app->controller; Yii::$app->controller = $controller; $result = $controller->runAction($actionID, $params); if ($oldController !== null) { Yii::$app->controller = $oldController; } return $result; }
$params = $this->catchAll; unset($params[0]); } try { Yii::debug("Route requested: '$route'", __METHOD__); $this->requestedRoute = $route; $result = $this->runAction($route, $params); if ($result instanceof Response) { return $result; } $response = $this->getResponse(); if ($result !== null) {
{ try { $this->state = self::STATE_BEFORE_REQUEST; $this->trigger(self::EVENT_BEFORE_REQUEST); $this->state = self::STATE_HANDLING_REQUEST; $response = $this->handleRequest($this->getRequest()); $this->state = self::STATE_AFTER_REQUEST; $this->trigger(self::EVENT_AFTER_REQUEST); $this->state = self::STATE_SENDING_RESPONSE; $response->send();
require(__DIR__ . '/../vendor/autoload.php'); require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php'); $config = require(__DIR__ . '/../config/web.php'); (new yii\web\Application($config))->run();
$_GET = [ 'dataType' => '2', 'page' => '1', ]; $_SESSION = [ '__flash' => [], ];