$record->logo = $record->logo;
$record->logo が設定されていない場合、エラーが発生します..少なくとも次のように言う必要があります:
$record->logo = '';
しかし、最善の方法は使用することですValidation::factory($_FILES)->check()
if ( $logo->check() ) {
// do your insert here
}
これは、私が最後にこれを管理したときのほんの一部です:
$logo = Validation::factory($_FILES);
$logo->rule('logo', 'Upload::not_empty')->rule('logo', 'Upload::type', array(':value', array('jpg', 'png', 'gif')));
if ( $logo->check() ) {
$logo = Upload::save($_FILES['logo'], NULL, 'assets/uploads/logo');
$image = ORM::factory('image')->where('id', '=', $id)->where('type', '=', 'logo')->find();
$path = explode('/', $logo);
$path = end($path);
$image->path = 'assets/uploads/logo/' . $path;
$image->playlist_id = $id;
$image->type = 'logo';
$image->save();
}