28 октября 2011 г. 15:05 пользователь Oleg Kostyuk <span dir="ltr"><<a href="mailto:cub.uanic@gmail.com">cub.uanic@gmail.com</a>></span> написал:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
А поделитесь, пожалуйста, практическим примером.<br>
<br>
У меня буквально на днях возник проект в двумя схемами (Pg). Начал<br>
думать как сделать - две dbic-шных схемы или одну? Мэтт на irc говорит<br>
делай одну. Ну, в результате сделал примерно так:<br>
<br>
lib/....../Schema/DB.pm<br>
.......<br>
__PACKAGE__->load_namespaces(<br>
    result_namespace    => 'Class',<br>
    resultset_namespace => 'ResultSet',<br>
);<br>
.......<br>
<br>
Ну и далее всё в файлах lib/....../Schema/DB/Class/Data/*.pm и<br>
lib/....../Schema/DB/Class/Public/*.pm - для схем data и public<br>
соответственно. Чтоб не писать в table() имена таблиц с именем схемы<br>
(а то мало ли - сегодня таблица в одной схеме, завтра в другой) -<br>
использовал on_connect_do как описано в DBIx::Class::Storage::DBI::Pg.<br>
К сожалению, проект свернули, практически сразу, потому я не знаю, что<br>
из этого получилось бы в дальнейшем, и на сколько это вообще было бы<br>
удобно на практике.<br>
<br>
Потому собственно и вопрос - а как было у вас? Поделитесь.<br></blockquote></div><br>У нас MySQL, поэтому разные схемы фактически означают разные БД. И всё это на работающей системе из полутора десятков приложений, использующих с эти схемы.<br>
<br>-- <br>Andrei Protasovitski<br>< andrei[dot]protasovitski[at]gmail[dot]com ><br>Diemen, Netherlands<br>