Symfony 1.4 改进了学说 save() 方法 [英] Symfony 1.4 improve doctrine save() method
本文介绍了Symfony 1.4 改进了学说 save() 方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的数据库中有 500 个条目.在我的后端,我有行动.例如:
I have 500 entries in my db. In my backend I have action. For example:
public function executeMyAction(sfWebRequest $request) {
// Get some data from table
$templates = Doctrine_Core::getTable('SeoTemplates')->findOneByEntity('training');
//Get data from other table(500 items)
$trainings = Doctrine::getTable('Training')->getTraining();
// Make some operations with data
foreach ($trainings as $training) {
$training->setSomeValue1('some_data');
$training->setSomeValue2('some_data');
$training->setSomeValue2('some_data');
}
// Problem part (try to save)
$trainings->save();
}
save() 执行了很长时间.如何解决这个问题呢?有可能吗?
save() performed for a long time. How to solve this problem? Is it possible?
在我的问题部分,我有所有已知错误致命错误:超过 30 秒的最大执行时间
In my problem part I have all known error Fatal error: Maximum execution time of 30 seconds exceeded in
推荐答案
保存每条记录而不是集合
Save each record instead of a collection
$templates = Doctrine_Core::getTable('SeoTemplates')->findOneByEntity('training');
$trainings = Doctrine::getTable('Training')->getTraining();
foreach ($trainings as $training) {
$training->setSomeValue1('some_data');
$training->setSomeValue2('some_data');
$training->setSomeValue2('some_data');
$training->save();
}
或使用 Doctrine 通过查询更新记录
or use Doctrine to update the records using a query
$q = Doctrine_Query::create()
->update('TABLE')
->set($val1, '?', $val1)
->set($val2, '?', $val2)
->set($val3, '?', $val3)
->where('id = ?', $id)
->execute();
这篇关于Symfony 1.4 改进了学说 save() 方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文