Подключить рабочую базу

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

Аватар пользователя Berkana Berkana 20 декабря 2014 в 10:30

Помогите советом с такой ситуацией.
Есть уже рабочая База документов, есть форма авторизации и прав, рабочие таблицы.
Как правильнее перетянуть базу в Друпал? Либо просто подключиться, либо перенести таблицы в базу Друпала, либо написать модуль и в нем описать инсталяцию таблиц и затем залить дамп? Желательно оставить структуру и название таблиц и одновременно объявить их Друпалу, чтоб можно было используя его средства, например Views делать выборку, например фильтр по правам пользователя, или по его запросам.

Буду благодарен любому совету.

Комментарии

Аватар пользователя Plazik Plazik 20 декабря 2014 в 11:30

"Berkana" wrote:
Как правильнее перетянуть базу в Друпал?

Можно через модуль migrate. Им вы импортируете всю базу к себе в друпал.

Аватар пользователя Berkana Berkana 20 декабря 2014 в 11:52

Спасибо, Plazik. читаю про Миграте. Но тут встречный вопрос, старый сайт (не друпал, рукописный на ПХП)находится в рабочем состоянии и там вяло, но происходят изменения, так же на новом на Друпале тоже будут изменения. Возможно ли это как то синхронизировать? возможно по расписанию, то есть задача постепенно перейти на новую платформу,предоставив пользователям выбор. Иметь доступ к старому сайту для чтения старых документов и к новому, где документы будут обновляться и дополняться уже средствами самого Друпала.

Аватар пользователя Inj Inj 20 декабря 2014 в 12:08

"Berkana" wrote:
Желательно оставить структуру и название таблиц и одновременно объявить их Друпалу

Думаю тут половину ядра как минимум переписывать. Лучше и, как мне кажется, правильнее будет написать модуль на Друпал, который будет подключаться к удалённой базе, смотреть что там, забирать данные и заносить их себе уже по своей структуре. Аналогично при создании своих материалов дублировать их в старую базу по её структуре.

"Berkana" wrote:
Буду благодарен любому совету.

не знаю насколько полезно, но раз уж так Smile

Аватар пользователя Plazik Plazik 20 декабря 2014 в 14:19

@Berkana вам нужно оба сайта сохранить или в конечном счете все перенести на друпал?
Если второй вариант, то пишите свой модуль на основе модуля migrate - тестируйте все на друпале и если все ок, то закрываете старый сайт, переносите все на новый и сразу запускаете.

Аватар пользователя voviko voviko 20 декабря 2014 в 14:57

Импорт прав пользователей в views вполне реализуем.
Отображение из таблиц старого сайта в views, и перенос обновление таблиц тоже.
Но это только отображение. Обновления таблиц вы не сделаете, а если сделаете, то drupal тут ни причем.
Единственный вариант писать свой модуль по импорту - обновлению.

Аватар пользователя Berkana Berkana 20 декабря 2014 в 16:27

Inj, да спасибо. я и сам к тому склоняюсь, написать модуль, который читает данные из старой базы и раскладывает это в свою. Смотрю Миграте по совету Plazik. Пока вникаю..

voviko, импорт прав в Views реализуем? скажу честно, не знаю с чего тут начать думать. Но я всегда подозревал, что не все прелести этого модуля известны.

На самом деле задача такая, надо оставить доживать старый сайт, все перенести на новый и возможно иногда синхронизировать их, а возможно и нет, если это очень затратно.

ps
могу ли я обратиться к кому либо в случае, если сам не справлюсь? если кто готов, то пожалуйста напишите в е-маил. Договоримся...

Аватар пользователя voviko voviko 20 декабря 2014 в 16:55

"Berkana" wrote:
voviko, импорт прав в Views реализуем? скажу честно, не знаю с чего тут начать думать.

Если честно, то не совсем. Реализуем при написании мостов к старой таблице пользователей. На самом деле намного проще перенести пользователей из старой базы на новую и использовать права, которые ставит drupal. Это можно сделать при помощи CSV.
Сейчас также разрабатываю систему миграции, и основной вопрос, это обновление сайта, а не перенос.
Импорт данных на новый сайт можно сделать в основном из CSV, и это несложно. Сложно перенести актуальную версию сайта.

Аватар пользователя voviko voviko 20 декабря 2014 в 17:04

Если сможете сделать экспорт в csv, здесь найдете специалистов, которые перенесут данные в drupal.
Можно использовать Миграте, но надо знать и drupal, так что не советую тратить на это время. Только ХардКод.

Аватар пользователя Berkana Berkana 20 декабря 2014 в 17:14

voviko экспорт конечно сделаю,но сам перенос? То есть тут я понимаю, надо точно понять, что есть что в старой таблице и какие таблицы и поля можно с ними соотнести. Я правильно мыслю?
А возможно и в процессе вывести новую схему взаимосвязей. ведь сайт создавался давно и сотни раз дописывался, существующая схема связей вряд ли оптимальна на данный момент.
То есть это возможно? я имею ввиду не запредельно сложно

Аватар пользователя voviko voviko 20 декабря 2014 в 17:26

Тут надо правильно подойти с нужной стороны.
есть основные сущности. Поля добавить можно любые. от текста до связи.
1.user
2.taxonomy
3.node

Тут можно перенести все.
Также без проблем можно привязать что-то к чему-то.

Аватар пользователя Berkana Berkana 20 декабря 2014 в 18:12

хорошо, а вот в такой ситуации с юзерами. В друпале полей немного, в старой таблице более 10-ти.
Как тут быть правильнее? Создать в Друпале дополнительные поля в Юзерах, и потом соотнести их с полями старой таблицы. Либо это произойдет в самом процессе переноса?

Аватар пользователя voviko voviko 20 декабря 2014 в 19:00

"Berkana" wrote:

хорошо, а вот в такой ситуации с юзерами. В друпале полей немного, в старой таблице более 10-ти.
Как тут быть правильнее? Создать в Друпале дополнительные поля в Юзерах, и потом соотнести их с полями старой таблицы. Либо это произойдет в самом процессе переноса?


Сами только ошибки появляются

Аватар пользователя Plazik Plazik 20 декабря 2014 в 19:11

"Berkana" wrote:
Создать в Друпале дополнительные поля в Юзерах, и потом соотнести их с полями старой таблицы.

Да.