Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
Суть проекта в следующем: на сайте группа товарищей взаимодействует друг с другом достаточно хитрым образом. В резулбтате взаимодействий этих у участников меняются некоторые параметры. Всё это отображается в базе данных. В общем до сих порвсё просто и тривиально. Но проблема в том, что сложность связи сущностей в базе такова, что средствами SQL эта задаче не решается. Изначально я предполагал использовать связку Apache-PHP-MySQL. Писать хотел ООП. Для сохранения целостности базы предполагал использовать такую структуру: 1: класс, реализующий работу с базой данных. Но реализует запросы на SQL. Но делает это так, что отсутствие триггеров в MySQL компенсируется кодом на PHP. 2: класс, реализующий всевозможное взаимодействие участников. Фактически он только вызывает методы класса 1. 3: класс, обеспечивающий взаимодействие сервера с клиентом (вывод в HTMLе и приём данных из форм). В общем класс 3 наследует класс 2, а класс 2 класс 1. Проблема в том, что PHP4, конечно, объектно-ориентированный. Но ориентированность эта слабоватая. А PHP5 ещё мало где стоит и вроде как не безопасен. Но тут наткнулся я на Питона. Услышал про Зоп. И решил проконсультироваться сдесь. Что лучше использовать в таком проекте: Apache-PHP-MySQL, или Zope-Pithon-MySQL? Знания в области питона с зопой почти нулевые. Но временни на изучение достаточно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2005, 19:22 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
>Но проблема в том, что сложность связи сущностей в базе такова, что средствами SQL эта задаче не решается. Средствами СКЛ решается все что решается другими способами, если это процедурное расширение разумеется, достаточно добавить циклы. Процедурное расширение поддерживают все СКЛ сервера и с недавнего времени МуСКЛ тоже. Вопрос только в том, можно ли задачу решить проще другими методами. По существу вопроса. Должно сработать. Питон очень неплохой язык с хорошей стандартной библиотекой и хорошей документацией. Но покупаться на рекламу о его простоте не стоит. О Zope (ну и имечко, почти как ebay) тоже вроде хорошие отзывы. Небольшой офтоп. Я бы выбрал не МуСКЛ а постгре, там есть триггеры, сохраненки можно писать кроме всего прочего и на питоне, кроме того по-человечески сделаны транзакции. Последняя версия работает под виндой, правда не заню насколько надежно. Хотя если Вы уверены в МуСКЛ то конечно лучше не дергаться. На всякий случай вот обсуждение вопроса постгре против мускл, там есть мнение людей которые работали и с тем и с другим. http://www.sql.ru/forum/actualthread.aspx?tid=163389 Там же есть ссылка на статью по сравнению нескольких бесплатных серверов: http://www.fabalabs.org/research/papers/FabalabsResearchPaper-OSDBMS-Eval.pdf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 02:02 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
Постгри значит. Ну посмотрим. А можно ли такую фишку сделать: чтоб первые два класса на питоне, а верхний (взаимодействие сервера с клиентом) на PHP? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 08:18 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
Для понимания вами фразы про сложные связи: у товарища есть вещь. У вещи есть номер. Когда он передаёт вещь другому товарищу, то у передователя поле с номером вещи должно стать NULL. А у получателя принять номер вещи. Как такое реализовать средствами MySQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 08:35 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
SarinДля понимания вами фразы про сложные связи: у товарища есть вещь. У вещи есть номер. Когда он передаёт вещь другому товарищу, то у передователя поле с номером вещи должно стать NULL. А у получателя принять номер вещи. Как такое реализовать средствами MySQL?А не проще ли сказать "у вещи есть хозяин" и при передаче вещи от одного другому менять поле "хозяин"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 09:11 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
Павел Воронцов SarinДля понимания вами фразы про сложные связи: у товарища есть вещь. У вещи есть номер. Когда он передаёт вещь другому товарищу, то у передователя поле с номером вещи должно стать NULL. А у получателя принять номер вещи. Как такое реализовать средствами MySQL?А не проще ли сказать "у вещи есть хозяин" и при передаче вещи от одного другому менять поле "хозяин"?Тут дело не в простоте, а в кратности связи. Если мы скажем "у хозяина есть вещь" (т.е. в таблице хозяин - поле вещь), то получится, что у хозяина может быть только одна вещь, но каждая вещь может принадлежать нескольким хозяевам. Если мы скажем, что "у вещи есть хозяин", т.е. в таблице "вещь" есть поле "хозяин", то получится, что каждая вещь принадлежит только одному хозяину, и у каждого хозяина может быть несколько вещей. Так что, Sarin, тебе лучше знать, что именно нужно. А вообще такой анализ делается в обратном направлении - т.е. сначала расписываем логическую модель со связями и кратностями, а потом уже проецируем их на физическую (т.е. структуру БД) и там уже смотрим в какой таблице какое поле должно быть. И, кстати, если надо знать не только "кто хозяин этой вещи", но и "кто был хозяином этой вещи вчера, а кто перед ним" - то двумя таблицами тебе ну никак не обойтись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 09:24 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
а банальное расскрытие отношения много-ко-много между "Хозяевами" и "Вещами" таблицей "Хозяева Вещей" не спасет великих программистов :) ? В нех также можно вести историю смены хозяев. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 20:45 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
ER-модель базы у меня нарисованна и перерисованна. И кратность связей есть. Это 1 к одному. И историю смены хозяев знать не надо. Вы не поняли в чём трабл. Он в том, что нет в мускле способа одним запросом передать вещь так, чтоб она у прежнего владельца исчезла. Или есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 23:25 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
2 Sarin >ER-модель базы у меня нарисованна и перерисованна. И кратность связей есть. Это 1 к одному. И историю смены хозяев знать не надо. Вы не поняли в чём трабл. Он в том, что нет в мускле способа одним запросом передать вещь так, чтоб она у прежнего владельца исчезла. Или есть? Одним запросом может и нельзя, а двумя в пределах одной транзакции наверное можно. Не все нужно или можно сводить к одному запросу, тем более что Вы схему БД менять не хотите. Еще можно написать триггер, это по-моему в данной ситуации будет более правильно, тогда на верхнем уровне будет один запрос. Но триггеров в МуСКЛ вроде нет а транзакции не всегда работают. А при чем тут постгреСКЛ? ("Постгри значит. Ну посмотрим. А можно ли такую фишку... Как такое реализовать средствами MySQL?") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2005, 01:14 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
P.S. О взаимодействии питона и ПХП ничего сказать не могу, с ПХП не работал, но думаю что это возможно. Тем более если Вы на питоне будете писать сохранненки постреСКЛ, то чем работать снаружи с самим постреСКЛ безразлично, это средство все равно не знает что делается внутри скл сервера. Или вопрос был в другом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2005, 01:19 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
Постгри - вроде как первая объектно-реляционная СУБД. Объектность её на питоне чтоль сделанна? Хочу почитать по томе на русском. Кинте ссылочек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2005, 10:34 |
|
||
|
Помогите выбрать среду для работы и разработки очень хитрого сайта.
|
|||
|---|---|---|---|
|
#18+
SarinПостгри - вроде как первая объектно-реляционная СУБД. Объектность её на питоне чтоль сделанна? Хочу почитать по томе на русском. Кинте ссылочек. Если не ошибаюсь его объектность сделана даже не на С++ а на С. К питону никакого отношения. Исходники постгре можно скачать тут: //www.postgresql.org/ но я никогда в них не заглядывал, может там и С++, но это не важно, важно что объекты разные. Не советую связываться с объектностью в реляционной СУБД, там больше проблем чем решений. Две могу назвать сразу: работа с объектами через одбц (ждбц, ... не важно) и поиск внутри объектов. Почитайте обсуждение фастобджектса в сравнении СУБД, даже из того что признали его ярые сторонники получается что там сплошные ограничения, а ведь говорят это почти ООСУБД. Используйте реляционную модель, она гораздо мощнее и удобнее чем кажется на первый взгляд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.06.2005, 01:34 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=33110752&tid=1347627]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
84ms |
get topic data: |
7ms |
get forum data: |
1ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 369ms |

| 0 / 0 |
