0
我做谷歌,但没有找到任何适当的解决方案,以创建一个新的领域,如果不是字段。cakephp创建新字段,如果不存在表
例如:如果我必须添加一个字段根据任何其他语言的标题。 title
,title_eng
,title_fr
...等
我找到了解决方案,但php
寻找解决的办法是在cakephp
$languageData = $this->LanguageSetting->find('first', array('conditions' => array('id' => $post['language_id'])));
$short_name = $languageData['LanguageSetting']['short_name'];
$subjectfieldName = "email_subject_" . $short_name;
$contentfieldName = "email_template_" . $short_name;
//add subject field if not present
$subjectfield = $this->LanguageSetting->query("SELECT $subjectfieldName FROM email_managers");
if (!$subjectfield) {
$insert_col = "ALTER TABLE email_managers ADD " . $subjectfieldName . " VARCHAR(255) NULL";
}
//add template field if not present
$contentfield = $this->LanguageSetting->query("SELECT $contentfieldName FROM email_managers");
if (!$contentfield) {
$insert_col = "ALTER TABLE email_managers ADD " . $contentfieldName . " TEXT NULL";
}
我尝试了上述解决方案,但得到这个错误。
Database Error
Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email_subject_' in 'field list'
真的吗?提高您的Google技能:https://www.google.com/search?q=cakephp+2+translations&oq=cakephp+2+translations首次点击。 – burzum
我不想翻译。我想添加列 –
“*如果我必须添加一个字段根据任何其他语言的标题*” - 这不是翻译?然而,由于多种原因,你的方法是非常糟糕的。检查行为。 – burzum