我已经在这个类的construct方法中定义了Request。
/**
* @var Request
*/
protected $request;
public function __construct(Request $request)
{
$this->request = $request;
}
现在,当我尝试在这样的函数中检索文章数据时:
public function postListsAction()
{
dd($this->request->get("title"));
}
我得到以下错误:
无法自动连线服务“App\Controller\ListController”:方法“\uuu construct()”的参数“$request”引用类“Symfony\Component\HttpFoundation\request”,但不存在此类服务。
如何解决此问题?
我认为问题在于您试图将请求作为服务注入构造函数中。你能试试下面的方法吗
use Symfony\Component\HttpFoundation\Request;
public function postListsAction(Request $request)
{
dd($request->get("title"));
// .....
}
Symfony文档:https://symfony.com/doc/4.3/controller.html#the-request-object-as-a-controller-argument
可注入服务类被称为RequestStack
,您可以通过调用getCurrentRequest
例如
namespace App\Managers;
use Symfony\Component\HttpFoundation\RequestStack;
class SomeManager
{
protected $requestStack;
public function __construct(RequestStack $requestStack)
{
$this->requestStack = $requestStack;
}
public function serviceMethod()
{
$request = $this->requestStack->getCurrentRequest();
}
}
正如错误消息所说,您尝试注入的请求类没有声明为服务。请改用RequestStack:
namespace App\Newsletter;
use Symfony\Component\HttpFoundation\RequestStack;
class NewsletterManager
{
protected $requestStack;
public function __construct(RequestStack $requestStack)
{
$this->requestStack = $requestStack;
}
public function anyMethod()
{
$request = $this->requestStack->getCurrentRequest();
// ... do something with the request
}
}
当做
我想编写一个名为addNewPhone(Phone newPhone)的方法,将一个Phone添加到一个电话数组列表中; 电话类别: 车间类别: 主要类: 我知道我需要返回ArrayList,并且我需要在这个方法中接收Phone type对象,然后它应该返回ArrayList和一个新的phones,但我不知道为什么它不起作用。 Eclipse显示我符合的方法:“newPhone无法解析或未归档”。
“Bericht”对象的单独类文件的一部分(荷兰语表示消息,包含一个字符串和两个日期): 在我的主方法的某个地方,我从这个类中创建新对象: 方法“printberichten”迭代数组列表并打印所有消息 getBericht getter方法: 因此,如果我创建一个新对象,我之前的所有对象都应该显示在text Area中,但我似乎只创建了我的类的一个实例。 在命令“lijst.add(this)”
我想排序卡,但不知道如何使用构造函数将不同的卡类型与实际变量int类型连接起来。 "将卡的类型设置为类卡中的final static字段,以便可以通过例如卡来调用它们。EFFECT_MONSTER" 不允许枚举。
这是一个我从头制作的密码生成器,但我想添加一个构造函数,这样我就可以使用它进行调用,还需要创建另一个类来调用它。如果可能的话,我想在这个项目上得到一些帮助。所以我的程序基本上解释了如何生成随机数符号,大写和小写。我第一次创建密码生成器代码时,它工作得不太好,因为它给了我全大写,有时全小写,或者只是没有其他变量的符号,然后我编写了这段代码,告诉程序如果没有这个变量,在显示这些变量之前,它无法创建其他
我想排序卡,但不知道如何使用构造函数将不同的卡类型与实际变量int类型连接起来。 “将卡的类型设置为类卡中的final static字段,以便可以通过例如Card.EFFECT_MONSTER调用它们。” 不允许使用枚举。
问题内容: 我正在尝试将字符串添加到Java中的ArrayList中,但似乎无法正常工作。 目前,我有以下代码: 为什么会出现以下错误: 令牌““披萨””上的语法错误,请删除此令牌 令牌语法错误,构造放置错误 问题答案: 您必须在函数中使用,例如: 希望有所帮助
我正在尝试在IntelliJ中设置一个简单的“Hello World”Spock测试--似乎无法启动。我做了以下工作: null 此时,我在单选按钮下面得到一个“Spock library not found in the Module”消息。这里没有建议的安装解决方案。是否需要对模块进行某种Maven设置?这对于Groovy设置是不必要的,因为它不需要Maven中的依赖项。
问题内容: 我想使两个按钮看起来像按钮。只有当我使用actionlink的#ID来应用时,我才能实现此目的。我想为操作链接分配一个类,但是当我使用下面的代码时,出现一个错误,提示我缺少“}”。 这是我正在应用的样式: 这可行,我想我可以将另一个#ID添加到样式中,但想将样式应用于Class。 问题答案: 您必须使用字符,因为class是C#中的关键字。这是MSDN文档的链接