我试图理解使用接口如何给我多重继承,因为我一直在谷歌上搜索.
class A
{
function do1(){}
function do2(){}
function do3(){}
}
class B extends A
{
function do4(){}
function do5(){}
function do6(){}
}
class C extends B
{
}
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,类C具有来自类A和B的所有方法.但是,类B也具有类A的所有方法,这是不必要的.
我的搜索已经出现使用接口来解决这个问题,方法是将方法移动到类并创建接口,如下所示.
interface A
{
function do1();
function do2();
function do3();
}
interface B
{
function do4();
function do5();
function do6();
}
class C implements A, B
{
function do1(){}
function do2(){}
function do3(){}
function do4(){}
function do5(){}
function do6(){}
}
Run Code Online (Sandbox Code Playgroud)
我真的没有看到这是如何解决这个问题的,因为所有代码都在新类中.如果我只想最初使用类A,我将不得不创建一个实现接口A的新类,并将相同的代码复制到新类.
有什么我想念的吗?
我想要一个简单的方法来访问我的控制器类中的$ app和$ request.该文件说这样做,
public function action(Application $app, Request $request) {
// Do something.
}
Run Code Online (Sandbox Code Playgroud)
但是向每个方法注入$ app和$ request似乎并不正确.有没有办法默认包含$ app和$ request到每个控制器,也许使用构造函数?我希望能够将它用作$ this-> app.
谢谢.
有没有办法用Symfony2配置测试参数?
我尝试从config_test.yml文件导入parameters_test.yml,但变量仍然来自parameters.yml文件,该文件由config.testl导入,由config_test.yml导入的config_dev.yml导入.
基本上我想在测试参数文件中设置不同的变量,这样我就可以访问这些值并在配置文件中使用它们.如果我将变量直接硬编码到config_test.yml中,我就无法访问它们.
我特别感兴趣的变量是database_name或doctrine-> dbal-> dbname.
谢谢
我有2个实体,并为它们创建了2个单独的表单类型。每种表单类型都有一些字段和一个提交按钮。
实体之一只是一个基本表(地址),其表单类型在页面上独立使用,并按预期工作,显示其所有字段和提交按钮。
另一个实体与地址表有关系。表单类型将嵌入地址表单类型及其一些自己的字段和一个提交按钮。问题是这种形式的类型在视图中显示时会显示2个不需要的按钮。而且我假设如果我嵌入多个表单类型,那么也会为每个表单类型显示一个按钮。
是否可以隐藏嵌入式表单类型的按钮,以便仅显示当前表单类型的按钮?