survos/core-bundle 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

survos/core-bundle

最新稳定版本:2.2.2

Composer 安装命令:

composer require survos/core-bundle

包简介

Traits and Interfaces common to other Survos bundles

README 文档

README

Symfony Bundle with interfaces, traits, models and services needed by more than one Survos components. For example, Model\Column is used by grid, api-grid and simple-datatables. RouteParametersInterface is used by tree and the griid bundles.

symfony/symfony#20083

composer req survos/core-bundle
<?php
// src/Entity/Foo.php
namespace App\Entity;

use Survos\CoreBundle\Entity\RouteParametersInterface;
use Survos\CoreBundle\Entity\RouteParametersTrait;

class Foo implements RouteParametersInterface
{
use RouteParametersTrait;

public function getUniqueParams(): array { 
    return ['fooId' => $this->getFooCode()];
}

Now use .rp in twig and ->getRp() in php as part of generating a route

<a href="{{ path('foo_show', foo.rp) }}">Show</a>

Combined with survos/maker-bundle, create a param converter

bin/console survos:make:param-converter Foo

Helper Tasks

echo "SYMFONY_DEPRECATIONS_HELPER=weak" >> .env

Shared Utilities

Survos\CoreBundle\Service\SurvosUtils is the home for small, shared helpers that are useful across multiple Survos bundles and applications. Before adding local string/path/entity helper methods in another bundle, check here first.

Common static helpers:

Helper Purpose
SurvosUtils::slugify($code, separator: '_') Stable ASCII slugs for route codes, index names, file-safe identifiers, and bundle metadata.
SurvosUtils::entityCode($class) Stable admin/browser code for entity classes. App\Entity\Intake becomes app_intake; Survos\OutreachBundle\Entity\Contact becomes outreach_contact. Used by api-grid and Tabler admin menus.
SurvosUtils::formatLargeNumber($number) Compact counts for badges and summaries, e.g. 1.2k or 3.4m.
SurvosUtils::humanFilesize($size) Human readable byte sizes.
SurvosUtils::parseQueryString($data) Query-string parsing that preserves parameter names Symfony/PHP would otherwise normalize.
SurvosUtils::actualClass($objectOrClass) Resolve Doctrine proxy classes back to their real class name.
SurvosUtils::createDir($dir) Create a directory if missing and return its real path with a trailing slash.
SurvosUtils::assertKeyExists() / assertInArray() Assertions with useful “missing key/value” diagnostics.

Example:

use App\Entity\Intake;
use Survos\CoreBundle\Service\SurvosUtils;

$code = SurvosUtils::entityCode(Intake::class); // app_intake
$route = $code . '_show';                       // app_intake_show

Instance helpers are available when the service is injected:

Helper Purpose
$utils->cleanPath($filename) Shorten paths relative to kernel.project_dir for logs/debug output.
$utils->flatten($messages) Flatten nested message/config arrays into dot paths.
$utils->populateObjectFromData($object, $data) Populate an object using Symfony PropertyAccess.

Guideline for agents and bundle authors: if a helper needs to be shared by api-grid-bundle, tabler-bundle, field-bundle, maker code, or app code, put it in core-bundle instead of recreating it locally.

统计信息

  • 总下载量: 16.17k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 0
  • 依赖项目数: 23
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 2
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-06-11

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固