l91/sulu-backend-bundle

Sulu后端包,便于创建自己的后端包。

1.0.1 2017-04-06 13:16 UTC

This package is auto-updated.

Last update: 2024-09-21 20:48:52 UTC


README

受doctrine crud generator启发。

一个Sulu包,旨在简化创建新的后端包。

使用此包,可以在不了解husky Sulu JavaScript框架的情况下创建后端包。

安装

composer require l91/sulu-backend-bundle

将包添加到AdminKernel

$bundles[] = new L91\Sulu\Bundle\BackendBundle\L91SuluBackendBundle();

使用方法

例如,我们将创建一个名为Vehicle的实体的API。

1. 创建实体

首先使用.orm.xml创建 doctrine 实体。

2. 创建仓库

创建一个仓库以从数据库中加载实体。BackendRepository 有默认实现。

  • findById
  • findAll
  • count

在您的仓库中创建函数或从BackendRepository扩展。

<?php

namespace YourBundle\Entity\Repository;

use L91\Sulu\Bundle\BackendBundle\Entity\Repository\BackendRepository;

class VehicleRepository extends BackendRepository
{
    // Add your custom repository functions here
}

注册仓库

services:
    your.repository.vehicle:
        class: YourBundle\Entity\VehicleRepository
        factory_service: doctrine.orm.entity_manager
        factory_method: getRepository
        arguments:
            - YourBundle\Entity\Vehicle

4. 生成控制器、管理器、管理员导航或标签、JSBundle

您可以使用以下命令轻松生成它们

app/console l91:sulu:backend:generate:crud YourBundle:Vehicle --route-format yml --service-format yml

添加 --extended 以免对包有要求。这将生成完整的自己的控制器、管理器等,当使用扩展生成时,您可以在生成包后从要求中删除此包。

命令列表

您还可以使用以下命令仅生成特定的部分

  • app/console l91:sulu:backend:generate:controller
  • app/console l91:sulu:backend:generate:manager
  • app/console l91:sulu:backend:generate:admin
  • app/console l91:sulu:backend:generate:js
  • app/console l91:sulu:backend:generate:navigation-provider