sabsay03/yii2-categories

Yii2 内容模块

dev-main 2021-01-20 16:35 UTC

This package is auto-updated.

Last update: 2024-09-21 00:34:33 UTC


README

categories-Module

yii2-shopping

Yii2 购物模块

Yii2 KOU E-Ticaret Sitesi

这个项目是我们4个人作为团队完成的。

模块

180202052-Melih Çalışkan> Products> 产品列表,添加到购物车,管理员添加产品选项卡

180202039-Onur Okyay> Shopping>购物车中的产品列表,购买,显示过去购买记录

180202105-Sabri Kusay Gülmez> Category> 分类列表,根据所选分类显示产品,管理员添加分类

180202026-Imran Kucur> Reviews>为每个产品添加评论和评分,显示所选产品的所有评论

User> 注册-登录,我的账户选项卡

安装

卸载Vagrant后,通过ssh连接,并在终端中输入以下内容进入advanced目录(cd /var/www/advanced)。

composer require melih058/yii2-migrations "dev-main"

composer require melih058/yii2-products "dev-main"

composer require sabsay03/yii2-categories "dev-main"

composer require imrankucur/yii2-reviews "dev-main"

composer require sabsay03/yii2-user "dev-main"

composer require onurokkyay/yii2-shopping "dev-main"

Advanced目录中的vendor文件夹需要生成以下文件。

在Advanced->backend->config->main.php中,模块应按以下方式引用。

'modules' => [
        'products' => [
            'class'=>'melih058\products\Module'
        ],
        'shopping' => [
    'class' => 'onurokkyay\shopping\Module',
    ],
        'user' => [
    'class' => 'sabsay03\user\Module',
],
        'categories' => [
            'class' => 'sabsay03\categories\Module',
        ],
        'reviews' => [
            'class' => 'imrankucur\reviews\Module',
        ],
    ]

迁移

在Advanced目录中(cd /var/www/advanced),在终端中输入以下命令。

在phpmyadmin的user部分输入root登录后,创建一个名为yii2advanced的新数据库。

php yii migrate --migrationPath=@melih058/migrations/migrations

看到7个新迁移后,说yes确认,然后在phpmyadmin中检查表。

网站外观

将以下内容全部复制并粘贴到advanced->backend->views->layout->main.php中。

<?php

/* @var $this \yii\web\View */
/* @var $content string */

use backend\assets\AppAsset;
use yii\helpers\Html;
use yii\bootstrap\Nav;
use yii\bootstrap\NavBar;
use yii\widgets\Breadcrumbs;
use common\widgets\Alert;

AppAsset::register($this);
?>
<?php $this->beginPage() ?>
<!DOCTYPE html>
<html lang="<?= Yii::$app->language ?>">
<head>
    <meta charset="<?= Yii::$app->charset ?>">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <?php $this->registerCsrfMetaTags() ?>
    <title><?= Html::encode($this->title) ?></title>
    <?php $this->head() ?>
</head>
<body>
<?php $this->beginBody() ?>

<div class="wrap">
    <?php
    NavBar::begin([
        'brandLabel' => '<class="img-responsive"/>Admin',
        'brandUrl' => 'http://advanced/backend/web/index.php?r=user/user/index',
        'options' => [
            'class' => 'navbar-inverse navbar-fixed-top',
        ],
    ]);
    $menuItems = [
        ['label' => 'Ana Sayfa', 'url' => ['/site/index']],
        ['label' => 'Ürünler', 'url' => ['/products/products/index']],
        ['label' => 'Kategoriler', 'url' => ['/categories/categories/index']],
    ];
    if (Yii::$app->user->isGuest) {
        $menuItems[] = ['label' => 'Giriş Yap', 'url' => ['/site/login']];
        $menuItems[] = ['label' => 'Kayıt Ol', 'url' => ['/site/signup']];

    } else {


       $menuItems[] = ['label' => 'Sepetim', 'url' => ['/shopping/shopping/index']];
            $menuItems[] = ['label' => 'Sipariş Geçmişim', 'url' => ['/shopping/purchasehistory/index']];
        $menuItems[] = ['label' => 'Hesabım', 'url' => ['/user/user/view']];
        $menuItems[] = '<li>'
            . Html::beginForm(['/site/logout'], 'post')
            . Html::submitButton(
                'Çıkış Yap (' . Yii::$app->user->identity->username . ')',
                ['class' => 'btn btn-link logout']
            )
            . Html::endForm()
            . '</li>';
    }
    echo Nav::widget([
        'options' => ['class' => 'navbar-nav navbar-right'],
        'items' => $menuItems,
    ]);
    NavBar::end();
    ?>

    <div class="container">
        <?= Breadcrumbs::widget([
            'links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : [],
        ]) ?>
        <?= Alert::widget() ?>
        <?= $content ?>
    </div>
</div>

<footer class="footer">
    <div class="container ">
        <p class="pull-left">&copy; <?= Html::encode(Yii::$app->name) ?> <?= date('Y') ?></p>
        <p class="pull-right"><?= Yii::powered() ?></p>
    </div>
</footer>

<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>

将以下内容全部复制并粘贴到advanced->backend->views->site->index.php中。

<?php

/* @var $this yii\web\View */

$this->title = 'KOU E-Ticaret';
?>
<div class="site-index">

    <div class="jumbotron">
        <h1>Hoşgeldiniz</h1>



        <p><a class="btn btn-lg btn-success" href=/backend/web/index.php?r=products/products/index>Alışverişe Başla!</a></p>

        <p><a class="btn btn-lg btn-success" href=/backend/web/index.php?r=categories/categories/index>Kategoriler</a></p>
    </div>
</div>

注册

从以下链接注册。

http://advanced/frontend/web/index.php?r=site%2Fsignup

然后登录phpmyadmin,在user表中将status从9改为10。

注册完成后,从以下链接登录。

http://advanced/backend/web/index.php?r=site%2Flogin

由于第一个注册的用户在user表中的id为1,所以1被认为是管理员。管理员可以在网站左上角的admin菜单中使用这些功能。其他用户不能使用这个菜单。

Yii2 Categories 模块

categories模块与product有一个一对多关系,即一个product有一个category,而一个category可以有多个product。只有管理员可以添加category。我们可以从左上角的admin菜单中点击category键。我们可以从上面的菜单栏中的category键列出category,并从中列出属于该category的产品。

分类页面

category

分类产品页面

category