文档章节

如何继承和重写一个Bundle的某部分

汤汤圆圆
 汤汤圆圆
发布于 2015/12/10 23:15
字数 318
阅读 50
收藏 0

###添加getParent方法

// src/UserBundle/UserBundle.php 
namespace UserBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class UserBundle extends Bundle
{
    public function getParent()
    {
        return 'FOSUserBundle'; #这里即是你需要重写某Bundle的名称
    }
}

###重写Controller

// src/UserBundle/Controller/RegistrationController.php
namespace UserBundle\Controller;

use FOS\UserBundle\Controller\RegistrationController as BaseController;

class RegistrationController extends BaseController//继承需要重写Controller
{
    public function registerAction()
    {
        //调用父类方法;也可以不调用完全使用自己的逻辑
        $response = parent::registerAction();

        // 可以做一些自己的事情
        return $response;
    }
}

这种方式只会在你的模板或路由中使用标准的写法FOSUserBundle:Registration:register来引用该控制器,才会起作用

###重写资源:模板和路由等

创建和父类一样的位置资源文件即可,例如我经常会重写FOS中 layout.html.twig文件;该文件在 FOSUserBundle中的位置是 Resources/views/layout.html.twig,我们在自己的Bundle中即可也创建Resources/views/layout.html.twig来重写覆盖,路由文件也一样

重写资源仅仅当你引用该资源的时候使用完整的路径的方法的时候起作用(FOSUserBundle/Resources/config/routing/security.xml);如果你使用@BundleName 快捷方式来引用资源是不起作用的;

###注意 翻译和验证文件不是通过这种方式来重写覆盖的

© 著作权归作者所有

汤汤圆圆

汤汤圆圆

粉丝 11
博文 82
码字总数 26299
作品 0
昌平
程序员
私信 提问
Web服务启动加载线程

在java web项目中我们通常会有这样的需求:当项目启动时执行一些初始化操作,例如从数据库加载全局配置文件,或者加载必要的配置信息进行初始化等,. 常用的方法有两种,第一种是自定义监听...

钟声已经敲响
2016/09/06
51
0
在一个Bundle里如何加载服务配置

1.创建一个自动加载的扩展类 . 类在DependencyInjection命令空间下(通常文件位置位于DependencyInjection 目录下). 文件的命令是去掉Bundle的名称的后缀Bundle用Extension来替代(eg AppBund...

汤汤圆圆
2015/12/12
36
0
【Android基础】页面跳转与传值(Activity跳转与传值)

一个Android应用程序很少会只有一个Activity对象,如何在多个Activity之间进行跳转,而且能够互相传值是一个很基本的要求。 本次我们就讲一下,Android中页面跳转以及传值的几种方式! Acti...

晨曦之光
2012/03/01
5.9K
0
Android两种为ViewPager+Fragment添加Tab的方式

在Android开发中ViewPager的使用是非常广泛的,而它不仅仅能够实现简单的开始引导页,还可以结合Fragment并添加Tab作为选项卡或为显示大批量页面实现强大的顺畅滑动 下面介绍两种为ViewPager+F...

)^程序猿^(
2016/08/04
0
0
android 成长日记 4.BaseActivity的实现和ActivityCollectio实现

为了实现Activity管理,我们可以新建CollectionActivity类,这里面有三个静态方法,一个静态变量List.一个add一个remove一个finnishall() 建立一个BaseActivity继承Activity,重写oncreate(),里面...

康康渐渐
2016/02/20
57
2

没有更多内容

加载失败,请刷新页面

加载更多

CentOS 7 查找软件安装位置的方法

1、通过文件搜索查找 root@jun-virtual-machine:# find / -name "*squid*"/var/log/squid/var/spool/squid/var/lib/yum/yumdb/s/48a7dbee62d6d5962ed739a8e4fc117cf7378bfd-squid-3.5......

webcreazy
20分钟前
5
0
eureka 加入密码认证 springboot-admin 加入密码认证

1. pom.xml 加入依赖 <!-- 加入密码认证 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</ar......

java框架开发者
24分钟前
4
0
数字在排序数组中出现的次数

Input:nums = 1, 2, 3, 3, 3, 3, 4, 6K = 3Output:4 二分查找的练习 public int GetNumberOfK(int[] nums, int K) { int first = binarySearch(nums, K); int last = b......

Garphy
35分钟前
5
0
大厂面试经:高频率JVM面试问题整理!

JVM(Java虚拟机)简单来说就是运行Java代码的解释器,作为螺丝钉程序员JVM其实了解下就差不多啦,不懂JVM内部细节照样能写出优质的代码!但是一到造火箭、飞机的场景(面试)不懂JVM的你,会...

架构文摘
51分钟前
9
0
thinkphp5.1学习过程五——request

<?phpnamespace app\index\controller;//use \think\facade\Request;use \think\Request;/** * Class Demo3 * @package app\index\controller * 正常情况下,控制器不依赖......

大海yht
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部