когда я начал пытаться реализовать это, я застрял.
некоторые бизнес-правила
1 сообщение может иметь много тегов.
1 тег может иметь много сообщений
база данных будет выглядеть так.
- Посты (id, title, body, ...)
- Posts_Tags (пост, тег)
- Теги (id, тег, ...)
когда я вставить - просто
- теги будут поступать от пользователя как значения, разделенные запятыми
explode($tags)
для получения отдельных тегов
- foreach $ tag
- проверить, существует ли тег
- если да, получить идентификатор
- если нет, вставьте тег и получите идентификатор
- вставить сообщение с тегами
Мне интересно, это лучший способ? могу ли я покончить с циклом chk, если теги существуют? или упростить это в 1 запрос?
обновление пост, abit hardder
как я могу проверить, обновил ли пользователь какие-либо теги. другой цикл? но на этот раз будут некоторые изменения (курсив)
explode($tags)
для получения отдельных тегов
- foreach $ tag
- проверьте, был ли этот пост отмечен этим тегом
- если нет,
- тег существует?
- да, получить идентификатор
- нет, вставьте и получите идентификатор
- если да, получить идентификатор
- обновить пост с тегами
хм, ... обновление более запутанно, как вы это реализуете?
Я использую PHP 5.3, Zend Framework 1.10, Doctrine 2