public function actionCreate()
 {
     $post = Yii::$app->request->post();
     $category = new Category();
     $category->name = $post['name'];
     $category->parent_id = $post['parent_id'];
     $category->save();
     $this->redirect('/admin/category/new');
 }
 public function actionIndex()
 {
     $category_data = ['PHP' => 0, 'JavaScript' => 0, 'Go' => 0, 'Python' => 0, 'Ruby' => 0];
     $news_data = [['title' => 'Список полезных инструментов для php разработчика', 'short' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Unde, similique incidunt facere quam fugit iure tempore nihil excepturi minima officiis! Cum, iure odit doloremque ipsa rem consequatur repellendus provident optio!', 'category_id' => 'PHP'], ['title' => 'Список полезных инструментов для JavaScript разработчика', 'short' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Unde, similique incidunt facere quam fugit iure tempore nihil excepturi minima officiis! Cum, iure odit doloremque ipsa rem consequatur repellendus provident optio!', 'category_id' => 'JavaScript'], ['title' => 'Список полезных инструментов для Go разработчика', 'short' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Unde, similique incidunt facere quam fugit iure tempore nihil excepturi minima officiis! Cum, iure odit doloremque ipsa rem consequatur repellendus provident optio!', 'category_id' => 'Go'], ['title' => 'Список полезных инструментов для Python разработчика', 'short' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Unde, similique incidunt facere quam fugit iure tempore nihil excepturi minima officiis! Cum, iure odit doloremque ipsa rem consequatur repellendus provident optio!', 'category_id' => 'Python'], ['title' => 'Список полезных инструментов для Ruby разработчика', 'short' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Unde, similique incidunt facere quam fugit iure tempore nihil excepturi minima officiis! Cum, iure odit doloremque ipsa rem consequatur repellendus provident optio!', 'category_id' => 'Ruby']];
     Category::deleteAll();
     News::deleteAll();
     foreach ($category_data as $title => $data) {
         $category = new Category();
         $category->title = $title;
         $category->save();
         $category_data[$title] = $category->id;
     }
     foreach ($news_data as $n) {
         $news = new News();
         $news->title = $n['title'];
         $news->short = $n['short'];
         $news->text = $n['short'];
         $news->category_id = $category_data[$n['category_id']];
         $news->author_id = 1;
         $news->save();
     }
 }
 public function actionUpdate($slug)
 {
     $model = $this->findModel($slug);
     if (!Yii::$app->user->can('editNews', ['model' => $model])) {
         $this->redirect('/news');
     }
     if ($model->load(Yii::$app->request->post())) {
         //!!! сделать поле status unsafe
         if (!Yii::$app->user->can('setStatusActiveNews')) {
             $model->status = 0;
         }
         if ($model->save()) {
             return $this->redirect(['view', 'slug' => $model->slug]);
         }
     }
     return $this->render('update', ['model' => $model, 'category' => ArrayHelper::map(Category::find()->all(), 'id', 'title')]);
 }
Exemplo n.º 4
0
 public function actionImg()
 {
     $categories = Category::find()->all();
     $uploadModel = new UploadForm();
     return $this->render("save", ['categories' => $categories, 'uploadModel' => $uploadModel]);
 }
Exemplo n.º 5
0
use yii\bootstrap\Nav;
use yii\helpers\Html;
use app\models\entity\Category;
$this->beginContent('@app/views/layouts/main.php');
?>
<div class="container">
	<div class="col-xs-12 col-sm-2">
		<p>
			<h2>News</h2>
			<?php 
$items = [['label' => 'All', 'url' => ['/news/default/index', 'category' => 'all']]];
if (!Yii::$app->user->isGuest) {
    $items[] = ['label' => 'My', 'url' => ['/news/default/index', 'category' => 'my']];
}
$category = Category::find()->all();
foreach ($category as $c) {
    $items[] = ['label' => $c->title, 'url' => ['/news/default/index', 'category' => $c->slug]];
}
?>
			<?php 
echo Nav::widget(['items' => $items, 'options' => ['class' => 'nav-pills nav-stacked']]);
?>
		</p>
		<?php 
if (!Yii::$app->user->isGuest) {
    ?>
		<p><?php 
    echo Html::a('Create news', ['create'], ['class' => 'btn btn-success']);
    ?>
</p>
Exemplo n.º 6
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getCategory()
 {
     return $this->hasOne(Category::className(), ['id' => 'category_id']);
 }