[Moscow.pm] Rose::DB update

Maxim Vuets maxim.vuets на gmail.com
Ср Апр 4 13:31:52 PDT 2012


On Wed, Apr 4, 2012 at 2:27 PM, Павел <pavel на kuptsov.info> wrote:

> а для каждого поля писать :
> $ob->field1($var);
> как-то не правильно мне кажется.

С Rose::DB::Object знаком плохо, но в общем такой подход выглядит
достаточно логически.

Для реализации вашего желания (если R:D:O действительно не умеет
делать это напрямую) напишите вспомогательную функцию по типу такой:

sub my_update {
  my ($class, $id, %prop) = @_;

  my @known_props = qw(id_cat name_pages id_nomer_100);

  my $obj = $class->load($id)
    or return;

  for my $prop_name (@known_props) {
    $obj->$prop_name($prop{$prop_name}) if exists $prop{$prop_name};
  }

  return $obj;
}

-- 
maxim.vuets.name


Подробная информация о списке рассылки Moscow-pm