当前位置: 首页>>代码示例>>PHP>>正文


PHP models\Books类代码示例

本文整理汇总了PHP中app\models\Books的典型用法代码示例。如果您正苦于以下问题:PHP Books类的具体用法?PHP Books怎么用?PHP Books使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Books类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: search

 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Books::find()->with('authors');
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $dataProvider->setSort(['attributes' => ['id', 'name', 'authorFullName' => ['asc' => ['authors.firstname' => SORT_ASC, 'authors.lastname' => SORT_ASC], 'desc' => ['authors.firstname' => SORT_DESC, 'authors.lastname' => SORT_DESC], 'label' => 'Автор'], 'date_update', 'date_create', 'date']]);
     $this->load($params);
     // валидация
     if (!$this->validate()) {
         $query->joinWith(['authors']);
         return $dataProvider;
     }
     // Фильтр по Автору
     $query->joinWith(['authors' => function ($q) {
         $this->authorFullName = trim($this->authorFullName);
         if ($this->authorFullName) {
             $Asearch = str_replace(" ", "|", $this->authorFullName);
             $q->where('`authors`.`firstname` RLIKE "' . $Asearch . '" ' . 'OR `authors`.`lastname` RLIKE "' . $Asearch . '"');
         }
     }]);
     /*  $query->andFilterWhere([
             'name' => $this->name,
             'authors.firstname' => $this->authorFullName,
         ]);*/
     $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['BETWEEN', 'date', $this->date_1, $this->date_2]);
     return $dataProvider;
 }
开发者ID:pmesher,项目名称:taskmy,代码行数:33,代码来源:BooksSearch.php

示例2: search

 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Books::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     if ($this->author_id) {
         $query->andFilterWhere(['author_id' => $this->author_id]);
     }
     if ($this->date_from) {
         if ($this->date_till) {
             $query->andFilterWhere(['date' => ['between', $this->date_from, $this->date_till]]);
         } else {
             $query->andFilterWhere(['>=', 'date', $this->date_from]);
         }
     } elseif ($this->date_till) {
         $query->andFilterWhere(['<=', 'date', $this->date_till]);
     }
     if ($this->name) {
         $query->andFilterWhere(['like', 'name', $this->name]);
     }
     return $dataProvider;
 }
开发者ID:IuriiP,项目名称:test160107,代码行数:34,代码来源:BookSearch.php

示例3: save

 public function save()
 {
     $model = Books::findOne($this->id);
     $fileInstance = UploadedFile::getInstance($this, self::FIELD_PREVIEW);
     if ($fileInstance) {
         $filePath = 'images/' . $fileInstance->baseName . '.' . $fileInstance->extension;
         $model->preview = $fileInstance->baseName . '.' . $fileInstance->extension;
         $fileInstance->saveAs($filePath, false);
         $imagine = new Gd\Imagine();
         try {
             $filePath = 'images/preview_' . $fileInstance->baseName . '.' . $fileInstance->extension;
             $img = $imagine->open($fileInstance->tempName);
             $size = $img->getSize();
             if ($size->getHeight() > $this->imageSizeLimit['width'] || $size->getWidth() > $this->imageSizeLimit['height']) {
                 $img->resize(new Box($this->imageSizeLimit['width'], $this->imageSizeLimit['height']));
             }
             $img->save($filePath);
             //
         } catch (\Imagine\Exception\RuntimeException $ex) {
             $this->addError(self::FIELD_PREVIEW, 'Imagine runtime exception: ' . $ex->getMessage());
             return FALSE;
         }
     }
     if (!$this->validate()) {
         return false;
     }
     $model->name = $this->name;
     $model->author_id = $this->author_id;
     $model->date = DateTime::createFromFormat('d/m/Y', $this->date)->format('Y-m-d');
     $model->date_update = new Expression('NOW()');
     $model->save();
     return true;
 }
开发者ID:andreyshade,项目名称:test_yii2,代码行数:33,代码来源:BooksForm.php

示例4: search

 public function search($params)
 {
     Yii::$app->session['BooksSearch'] = $params;
     $query = Books::find();
     $dataProvider = new ActiveDataProvider(['query' => $query, 'pagination' => ['pageSize' => 5]]);
     $dataProvider->setSort(['attributes' => ['id', 'name', 'preview', 'authorfullname' => ['asc' => ['authors.firstname' => SORT_ASC, 'authors.lasttname' => SORT_ASC], 'desc' => ['authors.firstname' => SORT_DESC, 'authors.lasttname' => SORT_DESC], 'label' => Yii::t('app', 'Author'), 'default' => SORT_ASC], 'date', 'date_create']]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         $query->joinWith(['author']);
         return $dataProvider;
     }
     $query->andFilterWhere(['like', 'name', $this->name]);
     if ($this->date_from) {
         $query->andFilterWhere(['>=', 'date', $this->date_from]);
     }
     if ($this->date_to) {
         $query->andFilterWhere(['<=', 'date', $this->date_to]);
     }
     if ($this->author_id) {
         $query->andFilterWhere(['author_id' => $this->author_id]);
     }
     $query->joinWith(['author']);
     return $dataProvider;
 }
开发者ID:akomyagin,项目名称:books,代码行数:26,代码来源:BooksSearch.php

示例5: getSearchQuery

 /**
  * Get query for book search
  * @return [QueryInterface]
  */
 public function getSearchQuery()
 {
     $query = Books::find();
     //Author
     $query = $query->filterWhere(['author_id' => $this->author_id]);
     //Name
     if (!empty($this->name)) {
         $query = $query->andWhere(['like', 'name', $this->name]);
     }
     //Date
     if ($this->firstTimestamp != 0 && $this->secondTimestamp != 0) {
         if ($this->firstTimestamp == $this->secondTimestamp) {
             $query = $query->andWhere(['=', 'date', $this->firstTimestamp]);
         } else {
             $query = $query->andWhere(['between', 'date', $this->firstTimestamp, $this->secondTimestamp]);
         }
     } else {
         if ($this->firstTimestamp != 0) {
             $query = $query->andWhere(['>=', 'date', $this->firstTimestamp]);
         } else {
             if ($this->secondTimestamp != 0) {
                 $query = $query->andWhere(['<=', 'date', $this->secondTimestamp]);
             }
         }
     }
     return $query;
 }
开发者ID:Dr1N,项目名称:BooksOrganizer,代码行数:31,代码来源:SearchForm.php

示例6: findModel

 protected function findModel($id)
 {
     if (($model = Books::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested book not exist.');
     }
 }
开发者ID:abegalinov,项目名称:test_task1,代码行数:8,代码来源:BooksController.php

示例7: loadModel

 private function loadModel($id)
 {
     $model = Books::findOne($id);
     if ($model == NULL) {
         throw new HttpException(404, 'Model not found.');
     }
     return $model;
 }
开发者ID:rutrader,项目名称:books,代码行数:8,代码来源:BooksController.php

示例8: index

 /**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     $keyword = Input::get('keyword');
     if (!$keyword) {
         $books = Books::orderBy('title', 'ASC')->get();
     } else {
         $books = Books::where('title', 'like', '%' . $keyword . '%')->orWhere('author', 'like', '%' . $keyword . '%')->get();
     }
     return view('catalog.index', compact('books'))->with('result', 'OK');
 }
开发者ID:jmnerd07,项目名称:book-management,代码行数:15,代码来源:CatalogController.php

示例9: actionRemove

 public function actionRemove($id)
 {
     if (Yii::$app->request->isAjax) {
         $model = Books::find()->where(['id' => $id])->one();
         $model->delete();
         Yii::$app->response->format = Response::FORMAT_JSON;
         return array('result' => true);
     }
     return $this->redirect('index.php?r=site%2Fbooks');
 }
开发者ID:mustymenko,项目名称:yii-test,代码行数:10,代码来源:BooksController.php

示例10: getAuthorBooks

 public static function getAuthorBooks($author_id, $return_count = true)
 {
     $author_id = (int) $author_id;
     $data = Books::find()->where('authors LIKE "%,' . $author_id . '" OR authors LIKE "%' . $author_id . '," OR authors LIKE "' . $author_id . '"');
     if ($return_count) {
         $data = (int) $data->count();
     } else {
         $data = $data->all();
     }
     return $data;
 }
开发者ID:Diakonrus,项目名称:test_zadanie_2,代码行数:11,代码来源:BooksAuthors.php

示例11: search

 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Books::find()->addSelect([$this->tableName() . ".*", "CONCAT(authors.firstname, ' ', authors.lastname) AS author_fullname"])->joinWith(['author']);
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $dataProvider->sort->attributes['author'] = ['asc' => ['authors.firstname' => SORT_ASC], 'desc' => ['authors.firstname' => SORT_DESC]];
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     // поиск по названию книги
     $query->andFilterWhere(['like', 'books.name', $this->name]);
     // поиск по дате от/до
     if (!empty($this->book_date_from) and !empty($this->book_date_to)) {
         // конвертирую в корректный формат времени и добавляю четкие временные границы
         $book_date_from = Yii::$app->formatter->asDatetime(str_replace("/", "-", $this->book_date_from), 'dd-MM-yyyy 00:00:00');
         $book_date_to = Yii::$app->formatter->asDatetime(str_replace("/", "-", $this->book_date_to), 'dd-MM-yyyy 23:59:59');
         $book_date_from = Yii::$app->formatter->asTimestamp($book_date_from);
         $book_date_to = Yii::$app->formatter->asTimestamp($book_date_to);
         $query->andFilterWhere(['between', 'books.date', $book_date_from, $book_date_to]);
     }
     // поиск по автору
     if ($this->author_fullname == 7 or in_array(trim(mb_strtolower($this->author)), array('без', 'без привязки', 'без привязки к автору'))) {
         // для книг без привязки к автору - из books
         $query->andFilterWhere(['=', 'author_id', 0]);
     } else {
         // из authors
         $query->andFilterWhere(['like', 'authors.firstname', $this->author]);
         $query->andFilterWhere(['=', 'authors.id', $this->author_fullname]);
     }
     /////////////////////// доп параметры для filterModel (если раскомменчены filterModel и Pjax в books/index.php)
     $query->andFilterWhere(['=', 'books.id', $this->id])->andFilterWhere(['like', 'books.preview', $this->preview]);
     // дата Выхода книги
     if (!empty($this->date)) {
         // конвертирую в корректный формат времени и добавляю четкие временные границы
         $book_date_from = Yii::$app->formatter->asDatetime(str_replace("/", "-", $this->date), 'dd-MM-yyyy 00:00:00');
         $book_date_to = Yii::$app->formatter->asDatetime(str_replace("/", "-", $this->date), 'dd-MM-yyyy 23:59:59');
         $book_date_from = Yii::$app->formatter->asTimestamp($book_date_from);
         $book_date_to = Yii::$app->formatter->asTimestamp($book_date_to);
         $query->andFilterWhere(['between', 'books.date', $book_date_from, $book_date_to]);
     }
     // дата Добавления книги
     if (!empty($this->date_create)) {
         // конвертирую в корректный формат времени и добавляю четкие временные границы
         $book_date_from = Yii::$app->formatter->asDatetime(str_replace("/", "-", $this->date_create), 'dd-MM-yyyy 00:00:00');
         $book_date_to = Yii::$app->formatter->asDatetime(str_replace("/", "-", $this->date_create), 'dd-MM-yyyy 23:59:59');
         $book_date_from = Yii::$app->formatter->asTimestamp($book_date_from);
         $book_date_to = Yii::$app->formatter->asTimestamp($book_date_to);
         $query->andFilterWhere(['between', 'books.date_create', $book_date_from, $book_date_to]);
     }
     ///////////////////
     return $dataProvider;
 }
开发者ID:krausweb,项目名称:yiibooks,代码行数:61,代码来源:BooksSearch.php

示例12: search

 public function search($params)
 {
     $query = Books::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         return $dataProvider;
     }
     $query->andFilterWhere(['author_id' => $this->author_id]);
     $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['<=', 'date', $this->date_to])->andFilterWhere(['>=', 'date', $this->date_from]);
     return $dataProvider;
 }
开发者ID:abegalinov,项目名称:test_task1,代码行数:12,代码来源:BooksSearch.php

示例13: dashboard

 public function dashboard()
 {
     // Check Author authentication Session
     if (!Auth::check('default')) {
         return $this->redirect('Authors::login');
     }
     // Retrieve current Author ID
     $author_id = Auth::check('default')->data['id'];
     // Retrieve Books from the current Author
     $conditions = array('Books.author_id' => Auth::check('default')->data['id']);
     $books = Books::find('all', compact('conditions'));
     return compact('books', 'author_id');
 }
开发者ID:nicolasramy,项目名称:Book-Community,代码行数:13,代码来源:AuthorsController.php

示例14: actionUpload

 public function actionUpload($id)
 {
     if (($model = Books::findOne($id)) !== null) {
         $file = UploadedFile::getInstanceByName('file');
         if ($file) {
             $file->saveAs($model->getCoverPath());
         } else {
             throw new NotFoundHttpException('Failed to load the file.');
         }
     } else {
         throw new NotFoundHttpException('The book does not exist.');
     }
 }
开发者ID:cutcut,项目名称:orbitsoft,代码行数:13,代码来源:BooksController.php

示例15: actionClose

 /**
  * Updates a new Rents model with closing info.
  * @return mixed
  */
 public function actionClose()
 {
     if (isset($_GET['book_id'])) {
         if ($model = Rents::find()->where(['book_id' => $_GET['book_id'], 'user_id' => Yii::$app->user->id, 'status' => 'rented'])->one()) {
             $model->prev_date = date('Y-m-d', time());
             $model->status = 'closed';
             $model->save();
             $book = Books::findOne($model->book_id)->updateStatus('available');
         }
         return $this->redirect(['book/index']);
     } else {
         return $this->redirect(['book/index']);
     }
 }
开发者ID:apfrankowski,项目名称:biblioteka,代码行数:18,代码来源:RentsController.php


注:本文中的app\models\Books类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。