Jump to content

HTML-код в $product->body и annotation


Go to solution Solved by mishanya,

Recommended Posts

Используем Simpla CMS 2.1.5 на нашем сайте, в ходе исправления верстки у меня возник вопрос по поводу наличия HTML-кода в базе данных. Во-первых, (по моему мнению), это не лезет ни в какие рамки модели MVC. 

 

Затем обращаюсь с вопросом к уважаемым разработчикам и пользователям: в чем резон данного метода, какие от него плюсы? Когда можно все реализовать в соответствии с моделью MVC (как это сделано, например, в вонючем битриксе и прочих).

 

В частности такой вопрос встал в необходимости вывести некоторую порцию данных из $product->body в определенном месте шаблона, а из-за того, что это один единый HTML, это становится затруднительно и решается только костылем. Думаю, что делать.

 

Спасибо

Link to post
Share on other sites

помоему вы ничего не смыслите в моделях MVC. в базе хранится информация о товарах, текст страниц и тд, если они форматированы, там есть html код. но это не код шаблона. все шаблоны хранятся в файлах и обрабатываются шаблонизатором Смарти.

 

в битриксе точно также вся информация сохраняется в базе. о чем вы говорите вообще?

Link to post
Share on other sites

...у меня возник вопрос по поводу наличия HTML-кода в базе данных.

Вопрос-то в чем?

Во-первых, (по моему мнению), это не лезет ни в какие рамки модели MVC.

А можете свое мнение подкрепить чем-то более серьезным?

...в чем резон данного метода, какие от него плюсы?

Метод-то какой? Вы, кажется, никакого метода не давали...

...вопрос встал в необходимости вывести некоторую порцию данных из $product->body в определенном месте шаблона, а из-за того, что это один единый HTML, это становится затруднительно...

Это общий принцип работы - что введено в поле в админке, то и выводится.

Что хотите-то конкретно?

 

Не нравится HTML в БД - можно отключить его в админке. Или использовать strip_tags() в PHP. Вроде бы все просто...

Link to post
Share on other sites

Кстати, strip_tags действительно решение. Полностью проигнорировал этот вариант. Точно!

Вы решили вопрос.

 

Про битрикс неуместно вспомнил. Когда много работаешь в визуальном редакторе - забываешь про устройство внутри. Извиняюсь.

Edited by dimas
Link to post
Share on other sites

MVC разделяет логику данных и вида (HTML). По сути HTML-код в БД мешает реализовать чистый MVC.

 

MVC это шаблоны отдельно, контролеры отдельно. а html код в базе используется для форматирования вашей информации. чистый MVC это где по-вашему используетя?

Link to post
Share on other sites

$product->body - это ОДНО поле таблицы. Как вы хотите хранить его - текст отдельно, теги отдельно??? :)

 

В моем случае столбец body содержит заголовок (strong) и далее перечисление <p>, и по сути выглядит подобно списку на странице товара, от того вывод: можно было реализовать набор свойств отдельными строками в БД с ассоциацией с товаром, к которому они относятся, а уже шаблон выводит их в нужном виде (простите, сразу приходит в голову, но я не так опытен в вебе).

Link to post
Share on other sites

. чистый MVC это где по-вашему используетя?

Я работаю с вебом редко но в других сферах всегда применяю MVC. Не верите, что там нет разметки и стилей в источнике данных? :P

Link to post
Share on other sites

В моем случае столбец body содержит заголовок (strong) и далее перечисление <p>, и по сути выглядит подобно списку на странице товара, от того вывод: можно было реализовать набор свойств отдельными строками в БД с ассоциацией с товаром, к которому они относятся, а уже шаблон выводит их в нужном виде (простите, сразу приходит в голову, но я не так опытен в вебе).

 

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

Link to post
Share on other sites
  • Solution

Я работаю с вебом редко но в других сферах всегда применяю MVC. Не верите, что там нет разметки и стилей в источнике данных? :P

 

вы по-моему не хотите понять вообще ничего. если пользователю нужно сделать строку текста красным, как это сделать по вашему? если не сохранять форматирование текста в базе?

Link to post
Share on other sites

По какой то причине магазин который мы купили содержит половину свойств в body в виде тех самых <p>.

 

вы по-моему не хотите понять вообще ничего. если пользователю нужно сделать строку текста красным, как это сделать по вашему? если не сохранять форматирование текста в базе?

Здесь спорить не буду. Вы правы, что это неизбежно и нормально, и я протупил.

Link to post
Share on other sites

По какой то причине магазин который мы купили содержит половину свойств в body в виде тех самых

 

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

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...