簡體   English   中英

Joomla 2.5 MVC Model prepareTable函數

[英]Joomla 2.5 MVC Model prepareTable function

在開發MVC組件時,我遇到了以下問題:在保存default.php中發布的數據之前,如有必要,應修改一些數據。 據我所知,到目前為止,特定模型中受保護的Function prepareTable(&$ table)應該滿足我的需求。 我從一個非常簡單的方法開始,如下所示:

protected function prepareTable(&$table){

$table=$this->getTable();

$table->image="HelloWorld";

}

我的期望是,在提交模板后,我的表中的特定字段現在具有值“HelloWorld”,但事實並非如此。

也許,有人可以給我一個如何處理prepareTable()函數的建議?

謝謝

如果其他所有設置都正確,則prepareTable(&$table)方法已經將表對象傳遞給它。

通常,類中的prepareTable()不會是getTable() ,因為您替換了傳入的$table ,該$table已經綁定了行數據。 通過更換它,您可以有效地與已經完成的工作分離。

我會刪除你的方法看起來像這樣的行:

protected function prepareTable(&$table){

    $table->image="HelloWorld";

}

如果你看一下Joomla核心文件中最簡單的prepareTable()實現,在com_banners你會看到與你的方法非常相似的東西;

/**
 * Prepare and sanitise the table data prior to saving.
 *
 * @param   JTable  A JTable object.
 * @since   1.6
 */
protected function prepareTable(&$table)
{
    $table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM