On 15/06/12 07:04, Alex Erzin wrote:
Hello,

[ ... ]
CREATE  TABLE  `mydb`.`target` (
   `target_id` INT NOT NULL ,
   `description` VARCHAR(45) NULL ,
   PRIMARY KEY (`target_id`) )

CREATE  TABLE `mydb`.`host` (
   `target_id` INT NOT NULL ,
   `hostname` VARCHAR(45) NULL ,
   `ip` VARCHAR(45) NULL ,
   PRIMARY KEY (`target_id`) ,
   CONSTRAINT `fk_host_target`
     FOREIGN KEY (`target_id` )
     REFERENCES `mydb`.`target` (`target_id` )
)

How to implemeng there classes Target and Host, so it possible to write

print $target->id(), $targer->description()
print $host->id(), $host->description(), $host->hostname(), $host->ip()

?

I have no ideas how to implement inheritance, and all my experiments are failed 
- from Host i cannot get access to parent properties like description.
Could you help me please (with examples)?
I don't know how you'd get $host->id (maybe you meant $host->target_id?), but you can proxy accessors across to other table definitions by specifying them in your relationship definition (see the 'proxy' section under https://metacpan.org/module/DBIx::Class::ResultSource#add_relationship).

Darius

NET-A-PORTER.COM Irresistible fashion at your fingertips



CONFIDENTIALITY NOTICE
The information in this email is confidential and is intended solely for the addressee. Access to this email by anyone else is unauthorised. If you are not the intended recipient, you must not read, use or disseminate the information. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Net-A-Porter Group Limited.
The Net-A-Porter Group Limited is a company registered in England & Wales 
Number: 3820604 Registered Office: 1 The Village Offices, Westfield, Ariel Way, 
London, W12 7GF

_______________________________________________
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/dbix-class@lists.scsys.co.uk

Reply via email to