xujinhuai 2016-07-26 16:28:42 5622次浏览 4条评论 5 3 0

数据库操作

创建表
CREATE TABLE `resource` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `texture` varchar(50) NOT NULL COMMENT '材质',
  `mark` varchar(50) NOT NULL COMMENT '牌号',
  `manufacturers` varchar(100) NOT NULL COMMENT '厂家',
  `price` int(11) NOT NULL COMMENT '价格',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
INSERT INTO `resource` VALUES ('1', 'PP', '300H', '中沙石化', '8300');
INSERT INTO `resource` VALUES ('2', 'LDPE', 'LD605', '燕山石化', '9850');
INSERT INTO `resource` VALUES ('3', 'ABS', 'D-190 ', '镇江奇美', '11300');
INSERT INTO `resource` VALUES ('4', 'ABS', 'D-180 ', '镇江奇美', '11500');
INSERT INTO `resource` VALUES ('5', 'ABS', 'D-2400 ', '镇江奇美', '17600');
INSERT INTO `resource` VALUES ('6', 'YH', 'YH100', '测试', '199466');
INSERT INTO `resource` VALUES ('7', 'YH', 'YH200', '测试', '56256');
INSERT INTO `resource` VALUES ('8', 'QW', 'QW-21', '压紧', '19865');
INSERT INTO `resource` VALUES ('9', 'ZX', 'ZX-82', '水果', '98632');
INSERT INTO `resource` VALUES ('10', 'OP', 'OP98', '叶城', '38941');

gii创建模型

<?php
namespace app\models;

use Yii;

/**
 * This is the model class for table "resource".
 *
 * @property integer $id
 * @property string $texture
 * @property string $mark
 * @property string $manufacturers
 * @property integer $price
 */
class Resource extends \yii\db\ActiveRecord
{
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'resource';
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['texture', 'mark', 'manufacturers', 'price'], 'required'],
            [['price'], 'integer'],
            [['texture', 'mark'], 'string', 'max' => 50],
            [['manufacturers'], 'string', 'max' => 100],
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'id' => Yii::t('app', 'ID'),
            'texture' => Yii::t('app', '材质'),
            'mark' => Yii::t('app', '牌号'),
            'manufacturers' => Yii::t('app', '厂家'),
            'price' => Yii::t('app', '价格'),
        ];
    }
}

控制器

<?php
namespace frontend\controllers;

use Yii;
use yii\web\Controller;
use yii\data\Pagination;
use app\models\Resource;

class ResourceController extends Controller
{
    /**
     * 数据列表
     */
    public function actionIndex($id = '')
    {
        $query = Resource::find();
        $pages = new Pagination([
            'defaultPageSize' => '4',
            'totalCount' => $query->count(),
        ]);

        $model = $query->orderBy('id DESC')
            ->offset($pages->offset)
            ->limit($pages->limit)
            ->all();

        return $this->render('index', [
            'model' => $model,
            'pages' => $pages,
            'id' => $id,
        ]);
    }

    /**
     * 添加数据
     */
    public function actionAdd($id = '')
    {
        if($id){
            $model = Resource::findOne($id);
        }else{
            $model = new Resource();
        }
        if($model->load(Yii::$app->request->post()) && $model->validate()){
            $model->save();
            return $this->redirect(array('resource/index'));
        }
        return $this->render('add', [
            'model' => $model,
            'id' => $id,
        ]);
    }

    /**
     * 更新数据
     */
    public function actionUpdate($id)
    {
        return $this->redirect(array('resource/add','id' => $id));
    }

    /**
     * 删除数据
     */
    public function actionDelete($id)
    {
        Resource::findOne($id)->delete();
        return $this->redirect(array('resource/index'));
    }
}

视图(index.php)

<?php
    use yii\helpers\Html;
    use yii\widgets\LinkPager;
?>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>资源列表</title>
        <style type="text/css">
            .list-head{margin-bottom:10px;overflow:hidden;}
            .list-head strong{padding:6px 0;font-size:16px;}

            .list-table{width:100%;}
            .list-table thead{font-weight:bold;}
            .list-table td{line-height:30px;text-align:center;border:1px solid #eee;}

            .fl{float:left;}
            .fr{float:right;}
        </style>
    </head>
    <body>
        <?= $id ?>
        <div class="list-head">
            <strong class="fl">资源列表</strong>
            <a href="index.php?r=resource/add" class="btn btn-primary fr">添加</a>
        </div>
        <table class="list-table">
            <thead>
                <tr>
                    <td>ID</td>
                    <td>材质</td>
                    <td>牌号</td>
                    <td>厂家</td>
                    <td>价格</td>
                    <td>操作</td>
                </tr>
            </thead>
            <tbody>
                <?php foreach($model as $resource): ?>
                <tr>
                    <td><?= Html::encode($resource->id) ?></td>
                    <td><?= Html::encode($resource->texture) ?></td>
                    <td><?= Html::encode($resource->mark) ?></td>
                    <td><?= Html::encode($resource->manufacturers) ?></td>
                    <td><?= Html::encode($resource->price) ?></td>
                    <td>
                        <a href="index.php?r=resource/update&id=<?= Html::encode($resource->id) ?>">编辑</a>
                        <a href="index.php?r=resource/delete&id=<?= Html::encode($resource->id) ?>" onclick="if(confirm('确定删除该条数据?')==false)return false;">删除</a>
                    </td>
                </tr>
                <?php endforeach; ?>
            </tbody>
        </table>
        <?= LinkPager::widget(['pagination' => $pages]) ?>
    </body>
</html>

视图(add.php)

<?php
    use yii\helpers\Html;
    use yii\widgets\ActiveForm;
?>

<?php $form = ActiveForm::begin(); ?>
    <?php if($id): ?>
        <?= $form->field($model, 'id')->textInput(['value' => $id, 'disabled' => 'disabled']) ?>
    <?php endif;  ?>
    <?= $form->field($model, 'texture') ?>
    <?= $form->field($model, 'mark') ?>
    <?= $form->field($model, 'manufacturers') ?>
    <?= $form->field($model, 'price') ?>
    <div class="form-group">
        <?php if($id): ?>
        <?= Html::submitButton('修改', ['class' => 'btn btn-primary']) ?>
        <?php else:?>
        <?= Html::submitButton('添加', ['class' => 'btn btn-primary']) ?>
        <?php endif;  ?>
    </div>
<?php ActiveForm::end(); ?>

本人是新手,请大家多多指教!

觉得很赞
您需要登录后才可以评论。登录 | 立即注册