私はgallery3 phpソフトウェアを使用しています。これはkohanaフレームワークに基づいています。誰もがアルバム情報フォームにチェックボックスを追加する方法を知っていますか?ギャラリー3ソフトウェアのKohanaフォームのチェックボックス
私はこのような試み:
静的関数get_edit_form($親){ $フォーム=新しいフォージ( "アルバム/更新/ {$ parent-> ID}"、 ""、 "ポスト"、配列( "id" => "g-edit-album-form")); $ form-> hidden( "from_id") - > value($ parent-> id); $ group = $ form-> group( "edit_item") - >ラベル(t( "Edit Album"));
と
公共機能更新($ album_id){ アクセス:: verify_csrf(); $ album = ORM :: factory( "item"、$ album_id); アクセス::必須( "ビュー"、$アルバム); アクセス::必須( "編集"、$アルバム);
$form = album::get_edit_form($album);
try {
$valid = $form->validate();
$album->title = $form->edit_item->title->value;
$album->description = $form->edit_item->description->value;
/* MPK: information fields for albums */
$album->information = $form->edit_item->information->value;
$album->info = $form->edit_item->info->value;
$album->sort_column = $form->edit_item->sort_order->column->value;
$album->sort_order = $form->edit_item->sort_order->direction->value;
if (array_key_exists("name", $form->edit_item->inputs)) {
$album->name = $form->edit_item->inputs["name"]->value;
}
$album->slug = $form->edit_item->slug->value;
$album->validate();
} catch (ORM_Validation_Exception $e) {
// Translate ORM validation errors into form error messages
foreach ($e->validation->errors() as $key => $error) {
$form->edit_item->inputs[$key]->add_error($error, 1);
}
$valid = false;
}
if ($valid) {
$album->save();
module::event("item_edit_form_completed", $album, $form);
log::success("content", "Updated album", "<a href=\"albums/$album->id\">view</a>");
message::success(t("Saved album %album_title",
array("album_title" => html::purify($album->title))));
if ($form->from_id->value == $album->id) {
// Use the new url; it might have changed.
json::reply(array("result" => "success", "location" => $album->url()));
} else {
// Stay on the same page
json::reply(array("result" => "success"));
}
} else {
json::reply(array("result" => "error", "html" => (string)$form));
}
}
フィールド、フォーム上に表示されていますが、フィールドの値がDBに保存されません。 DBではtinyint(1)です。
質問の先頭にコードの書式を修正したい場合があります。 – Donovan