使用DBIx :: Class,谢天谢地,我找到了解决问题的方法.但我相信必须有一个更好的方式.
my $record = $schema->resultset("food")->create({name=>"bacon"});
Run Code Online (Sandbox Code Playgroud)
如何将此记录转换为简单的hashref,而不必在此之后立即进行此调用.
my record = $schema->resultset("food")->search({name=>"bacon"})->hashref_array();
Run Code Online (Sandbox Code Playgroud)
理想情况下,我希望能够编写一个简单的代码片段
{record=> $record}
Run Code Online (Sandbox Code Playgroud)
代替
{record => {name => $record->name, $record->food_id, ...}}
Run Code Online (Sandbox Code Playgroud)
这会让我感到疯狂,因为这个表有很多列.
我猜你在说什么DBIx::Class?
my $record = $schema->resultset("food")->create({name=>"bacon"});
my %record_columns = $record->get_columns;
# or, to get a HashRef directly
my $cols = { $record->get_columns };
# or, as you've asked for
my $foo = { record => { $record->get_columns } };
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1158 次 |
| 最近记录: |