tiderjian/lara-for-tp

laravel for tp3.2 as a tools

v1.2.6 2020-01-19 07:50 UTC

README

Travis (.com) style ci download lincense LICENSE Pull request welcome

介绍

由于还有很多老旧但又重要的项目依然采用tp3.2来实现,Lara for Tp就是为了让过时的tp能使用laravel的migrate数据库版本管理及laravel dusk的功能,以实现更科学的开发部署方法。

安装

安装qs_cmf

composer安装

composer require tiderjian/lara-for-tp

安装后执行vendor/bin/larafortp 脚本,完成自动安装。

使用

目前支持的laravel功能有 migrate、make:model、make:seeder、db:seed,具体用法请自行查阅laravel手册。

migrate文件必须存放在lara/database/migrations下,在lara目录下的.env文件中配置要访问的数据库,然后在项目根目录执行php artisan migrate即可完成数据库的迁移,相关的migrate命令可查看laravel文档

测试脚本必须存放到lara/tests路径下,继承该目录下的TestCase类。配置phpunit.xml文件,设置可用于测试使用的数据库及web服务地址端口。最后运行phpunit,执行测试脚本。关于laravel dusk的使用请查阅laravel文档

文档

MenuGenerate

用于生成后台的菜单选项

案例一

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
use Larafortp\MenuGenerate;

class CreateSeed extends Migration
{
    private $menuData = array(
        array(
            'title'=>'平台2',//标题              (必填)
            'module'=>'admin1',//模块英文名        (必填)
            'module_name'=>'后台管理',//模块中文名   (必填)
            'url'=>'',//url                  (必填)
            'type'=>'',//类型                (选填)
            'sort'=>0,//排序                (选填)
            'icon'=>'',//icon                (选填)
            'status'=>1,//状态              (选填)
            'top_menu' => array(
                '新闻中心'=>array(
                        array(
                            'name'=>'index',       //(必填)
                            'title'=>'测试新闻中心',    //(必填)'
                            'controller'=>'News',//(必填)
                            'sort' => 1, //排序       //(选填)
                            'icon'=> '',//图标        //(选填)
                            'remark'=> '',//备注      //(选填)
                            'status'=>1,//状态        //(选填)
                        ),
                ),
            ),
        ),
    );
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        $menuGenerate = new MenuGenerate();
        $menuGenerate->insertNavigationAll($this->menuData);
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        $menuGenerate = new MenuGenerate();
        $menuGenerate->insertNavigationAllRollback($this->menuData);
    }
}

案例二

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
use Larafortp\MenuGenerate;

class CreateSeed extends Migration
{
    private $menuData = array(
        '测试模块'=>array(
            array(
                'name'=>'index2',
                'title'=>'首页轮播图',
                'sort' => 0,
                'controller'=>'NewsCate',
                'status'=>1,
            ),
            array(
                'name'=>'index3',
                'title'=>'首页信息配置',
                'sort' => 1,
                'controller'=>'NewsCate',
                'status'=>1,
            ),
            array(
                'name'=>'money4',
                'title'=>'捐款总金额',
                'controller'=>'NewsCate'
            ),
        ),
    );
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        $menuGenerate = new MenuGenerate();
        $menuGenerate->insertAll($this->menuData);
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        $menuGenerate = new MenuGenerate();
        $menuGenerate->insertAllRollback($this->menuData);
    }
}

Faker

laravel默认得Faker工具不支持zh_CN简体文本的生成,修复了该问题

Faker的image生成使用的lorempixel,生成某些尺寸的图片时很容易出现烂图。因此使用了placeimg替换掉该功能。

lincense

MIT License AND 996ICU License