0

是否有可能使用学说(symfony 1.4)创建查询,其中我在 from 子句中定义了数据库中的表名(不是 schema.yml 中的模型类)?

例如:

在 schema.yml 我有模型类

StaticPage:
connection: doctrine
tableName: static_page
columns:
...

我的查询如下:

$item = Doctrine_Query::create();
$item->query("SELECT * FROM StaticPage WHERE id = ".$id);
$change = $item->fetchOne();
$change->setPublished(true);
$change->save();

在这个查询而不是StatigPage中,我需要static_page(tableName)......

谢谢...

4

2 回答 2

1

Fracsi 解决方案的其他方式:

$item = Doctrine::getTable("StaticPage")->findOneById($id);
    if($item instanceof StaticPage) {
        $item->setPublished(true);
        $item->save();
    }

始终使用您的模型/ORM。在少数情况下,Doctrine 无法构建正确的查询语法,您必须自己编写 sql。

于 2013-06-20T07:29:37.517 回答
1

通用版:(通过参数传递模型名称(例如$sf_request

$item = Doctrine::getTable($model_name)->findOneById($id);
$item->setPublished(true);
$item->save();
于 2013-06-20T07:35:21.440 回答