Мультисайтинг. Отбор расшаренных полей в таблице

Главные вкладки

Аватар пользователя volocuga volocuga 17 сентября 2009 в 19:53

Вот конфигурация в settings.php

<?php$db_url = 'mysqli://bd_login:bd_pass@localhost/bd_shared';
$db_prefix = array(
    'default' => '',
    'authmap' => 'bdname_shared.',
    'profile_fields' => 'bdname_shared.',
    'profile_values' => 'bdname_shared.',
    'role' => 'bdname_shared.',
    'sessions' => 'bdname_shared.',
    'users' => 'bdname_shared.',
);?>

так как у нас стоят точки,то расшариваются не префиксы в бд,а целые отдельные таблицы.Но вот как быть,если нужно исключить определённое поле в таблице.

Например,таблица "users" должна быть расшарена с другим сайтом,но поле в ней,скажем "signature" должно не быть поделенным?

В этом случае обе инсталяции друпала будут иметь по своей собственной таблице "user",с одним полем "signature",все остальные поля будут расшарены в базе данных "bd_shared"

Такое вообще возможно?

Комментарии

Аватар пользователя Nikit Nikit 18 сентября 2009 в 5:06

http://api.drupal.org/api/function/db_prefix_tables/6 такого не может.
наверное нужно добавить свой обработчик в таком плане:

$db_prefix = array(
...
  unique_columns_in_shared = array('users.signature', ...)
);

ну или
  shared_columns = array('users' => array('uid', 'name', 'pass', ... /* кроме signature*/),