GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  DBIX::CLASS::SCHEMA::LOADER::MANUAL::UPGRADINGFROMV4 (3)

.ds Aq ’

NAME

DBIx::Class::Schema::Loader::Manual::UpgradingFromV4 - Important Information Related to Upgrading from Version 0.04006

CONTENTS

What Changed

o add_column

The new Loader detects much more information about columns and sets flags like is_auto_increment that it didn’t set before.

o RelBuilder

The new RelBuilder will give you nicer accessor names for relationships, so you will no longer have conflicts between a foreign key column and the relationship accessor itself (if the FK is named _id.)

It will also more correctly infer the relationship type, e.g. some relationships that were previously detected as a has_many will now be a might_have (when it detects a unique constraint on the foreign key column.)

Also cascade_delete and cascade_copy are turned off for by default for has_many and might_have relationships, while belongs_to relationships are created with on_delete => CASCADE and on_update => CASCADE by default. This is overridable via relationship_attrs.

o moniker_map

Table names are now singularized when determining the Result class names. So the table user_roles would have become UserRoles in 0.04006 but now becomes UserRole instead.

o use_namespaces

Now defaults to on. See use_namespaces in DBIx::Class::Schema::Loader::Base and load_namespaces in DBIx::Class::Schema.

o Support for more databases

We now support Microsoft SQL Server and Sybase, and there are also many improvements to the other backends.

Backward Compatibility

In backward compatibility mode, the Loader will use the old relationship names and types, will not singularize monikers for tables, and use_namespaces will be off.

To control this behavior see naming in DBIx::Class::Schema::Loader::Base and use_namespaces in DBIx::Class::Schema::Loader::Base.

    Static Schemas

When reading a Schema.pm from a static schema generated with an 0.04 version of Loader, backward compatibility mode will default to on, unless overridden with the naming and/or use_namespaces attributes.

    Dynamic Schemas

Dynamic schemas will always by default use 0.04006 mode and have use_namespaces off.

To upgrade a dynamic schema, set the naming and use_namespaces attributes (which is proxied to the loader) in your Schema.pm:



    __PACKAGE__->naming(current);
    __PACKAGE__->use_namespaces(1);



AUTHOR

See AUTHOR in DBIx::Class::Schema::Loader and CONTRIBUTORS in DBIx::Class::Schema::Loader.

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 DBIX::CLASS::SCHEMA::LOADER::MANUAL::UPGRADINGFROMV4 (3) 2013-04-11

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.