gpt4 book ai didi

symfony1 - Symfony 管理生成器 Doctrine executeCreate

转载 作者:行者123 更新时间:2023-12-02 19:22:21 25 4
gpt4 key购买 nike

感谢您对此提供的任何帮助,我对 Symfony 框架非常陌生,所以只是想了解一下它。

我希望能够拦截从管理区域提交的表单并修改数据。

这是我到目前为止所得到的(基本形式)..

/apps/backend/modules/proposition/actions/action.class.php

class propositionActions extends autoPropositionActions {

public function executeCreate(sfWebRequest $request) {
// modify the name
$name = $request->getParameter('name');
$name = $name . ' is an idiot';
$request->setParameter('name', $name);

return parent::executeCreate($request);
}

}

我的表单确实包含名称字段:

/apps/backend/modules/proposition/config/generator.yml

generator:
class: sfDoctrineGenerator
param:
model_class: Proposition
theme: admin
non_verbose_templates: true
with_show: false
singular: ~
plural: ~
route_prefix: proposition
with_doctrine_route: true
actions_base_class: sfActions

config:
actions: ~
form:
display: [name, icon, overview, published]

我不确定这是否是您需要查看的文件,但它肯定在 HTML 中:

<input type="text" id="proposition_name" name="proposition[name]">

当我提交表单时,它只会保存我的名字。我希望它保存我的名字并附加“是个白痴”。

非常感谢

最佳答案

我认为你是在正确的轨道上,彼得,但修改$request为时已晚,无法产生任何效果。

您可以对 the "doClean" part of the Form's validator 中的入站数据进行此类修改.

或者,如果您需要进行特殊处理,则重写生成的 processForm() 函数可能更有意义。只需将其从 cache/frontend/dev/modules/autoProposition/actions/actions.class.php 复制到 apps/backend/modules/proposition/actions/action.class.php 并开始黑客攻击。

关于symfony1 - Symfony 管理生成器 Doctrine executeCreate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4727314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com