2009/12/9 Eden Cardim <[email protected]>:
>>>>>> "Dermot" == Dermot  <[email protected]> writes:
>
>    Dermot> Hi, I am getting the following error when I attempt to
>    Dermot> create a record.
>
>    Dermot> DBD::mysql::st execute failed: Duplicate entry '0' for key 3
>    Dermot> [for Statement "INSERT INTO products ( distribution,
>    Dermot> caption, contributor_id, ...) VALUES(( ?, ?, ?, ?, ?, ?, ?,
>    Dermot> ?, ?, ?, ? )" with ParamValues: 0='1', 1='Earth', 2='3'....)
>
>    Dermot> Is 'key 3' referring to 'the 3rd item in the INSERT list
>    Dermot> (contributor_id)?
>
> No, that's a mysql error, you're probably violating a constraint on your
> table with those values.

Yes. I was hoping I could find out what 'key 3' was referring to.

>
> No, you're just doing it wrong, try:
>
> my $row = $schema->resultset('Products')->find_or_create(
>    {
>        distribution => 1,
>        caption      => 'Earth',
>        contributor  => { code => $var, name => $name }
>    }
> );

Oh! Should I be using the name of the accessor_name from the belongs_to?

Dp.

_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[email protected]

Reply via email to