我已经决定在LAMP堆栈中使用Horde Text_Diff引擎来计算diff并渲染它们.我的问题是:
将增量实际存储在数据库中的好方法是什么?我以前从未设计过这种数据库应用程序,并且看起来大多数引擎都需要完整序列化的整个原始文本和更改后的文本以呈现差异.
如果是这种情况,那么如何在不存储整个新文档的情况下将diff的数据存储在数据库中?
(注意:出于这个特殊目的,它将始终是当前版本 - >建议diff->新当前版本,这意味着我正在尝试存储实际差异而不是反向差异.)
这真的很奇怪,它发生在更新Twig模板后:
控制器部分
$registration = new Registration();
$form = $this->createForm(new RegistrationType(), $registration, array(
'action' => $this->generateUrl('account_create'),
));
return $this->render(
'AcmeCommonBundle:Security:register.html.twig',
array(
'form' => $form->createView(),
'contentBackColor' => 'canvasGreen'
)
);
Run Code Online (Sandbox Code Playgroud)
模板部分
{{ form_start(form) }}
{{ form_errors(form) }}
<p>All Fields Are Required</p>
<div class="form-row">
{{ form_label(form.firstname, "First Name") }}
{{ form_widget(form.firstname) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.firstname) }}
</div>
<div class="form-row">
{{ form_label(form.lastname, "Last Name") }}
{{ form_widget(form.lastname) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.lastname) }}
</div>
<div class="form-row">
{{ …Run Code Online (Sandbox Code Playgroud)