読者です 読者をやめる 読者になる 読者になる

どこぞのエンジニアなマネージャーのブログ。

Perlとかviとかcssとかjavascriptとか(rubyとか)git >> https://github.com/rozary hatenaIDがrozrayなのはtypo

DBIx::FixtureLoader(0.11)でload_fixtureにdataを渡す場合は。

メモがてら。

data形式で入れる場合はこんな感じで入れる。

my $loader = DBIx::FixtureLoader->new(dbh=>$dbh);
$load_fixture->(
  [
    {id=>1,name=>"bioshock"},
    {id=>2,name=>"amnesia"},
  ],
  {table=>"game"},
);

中身のお話。

DBIx::FixtureLoaderは、insertするデータをSQL::Makerに渡している。

my ($sql, @binds) = $self->_sql_builder->insert_multi($table, $data, $opt ? $opt : ());

で、SQL::MakerのSYNOPSYSを確認するところ。

 ( $sql, @binds ) = $builder->insert_multi($table, \@rows);

これ。

だので、それにデータ形式を合わせるとなると。
一番上の方法ということになる。

と思う。