dimas Posted September 30, 2015 Report Share Posted September 30, 2015 Используем Simpla CMS 2.1.5 на нашем сайте, в ходе исправления верстки у меня возник вопрос по поводу наличия HTML-кода в базе данных. Во-первых, (по моему мнению), это не лезет ни в какие рамки модели MVC. Затем обращаюсь с вопросом к уважаемым разработчикам и пользователям: в чем резон данного метода, какие от него плюсы? Когда можно все реализовать в соответствии с моделью MVC (как это сделано, например, в вонючем битриксе и прочих). В частности такой вопрос встал в необходимости вывести некоторую порцию данных из $product->body в определенном месте шаблона, а из-за того, что это один единый HTML, это становится затруднительно и решается только костылем. Думаю, что делать. Спасибо Quote Link to post Share on other sites
mishanya Posted September 30, 2015 Report Share Posted September 30, 2015 помоему вы ничего не смыслите в моделях MVC. в базе хранится информация о товарах, текст страниц и тд, если они форматированы, там есть html код. но это не код шаблона. все шаблоны хранятся в файлах и обрабатываются шаблонизатором Смарти. в битриксе точно также вся информация сохраняется в базе. о чем вы говорите вообще? Quote Link to post Share on other sites
Kors Posted September 30, 2015 Report Share Posted September 30, 2015 ...у меня возник вопрос по поводу наличия HTML-кода в базе данных.Вопрос-то в чем?Во-первых, (по моему мнению), это не лезет ни в какие рамки модели MVC.А можете свое мнение подкрепить чем-то более серьезным?...в чем резон данного метода, какие от него плюсы?Метод-то какой? Вы, кажется, никакого метода не давали......вопрос встал в необходимости вывести некоторую порцию данных из $product->body в определенном месте шаблона, а из-за того, что это один единый HTML, это становится затруднительно...Это общий принцип работы - что введено в поле в админке, то и выводится. Что хотите-то конкретно? Не нравится HTML в БД - можно отключить его в админке. Или использовать strip_tags() в PHP. Вроде бы все просто... Quote Link to post Share on other sites
dimas Posted September 30, 2015 Author Report Share Posted September 30, 2015 (edited) Кстати, strip_tags действительно решение. Полностью проигнорировал этот вариант. Точно!Вы решили вопрос. Про битрикс неуместно вспомнил. Когда много работаешь в визуальном редакторе - забываешь про устройство внутри. Извиняюсь. Edited September 30, 2015 by dimas Quote Link to post Share on other sites
Kosjak76 Posted September 30, 2015 Report Share Posted September 30, 2015 В какой отдельной таблице?Какие данные?$product->body - это ОДНО поле таблицы. Как вы хотите хранить его - текст отдельно, теги отдельно??? Quote Link to post Share on other sites
dimas Posted September 30, 2015 Author Report Share Posted September 30, 2015 помоему вы ничего не смыслите в моделях MVC. MVC разделяет логику данных и вида (HTML). По сути HTML-код в БД мешает реализовать чистый MVC. Quote Link to post Share on other sites
mishanya Posted September 30, 2015 Report Share Posted September 30, 2015 MVC разделяет логику данных и вида (HTML). По сути HTML-код в БД мешает реализовать чистый MVC. MVC это шаблоны отдельно, контролеры отдельно. а html код в базе используется для форматирования вашей информации. чистый MVC это где по-вашему используетя? Quote Link to post Share on other sites
dimas Posted September 30, 2015 Author Report Share Posted September 30, 2015 $product->body - это ОДНО поле таблицы. Как вы хотите хранить его - текст отдельно, теги отдельно??? В моем случае столбец body содержит заголовок (strong) и далее перечисление <p>, и по сути выглядит подобно списку на странице товара, от того вывод: можно было реализовать набор свойств отдельными строками в БД с ассоциацией с товаром, к которому они относятся, а уже шаблон выводит их в нужном виде (простите, сразу приходит в голову, но я не так опытен в вебе). Quote Link to post Share on other sites
dimas Posted September 30, 2015 Author Report Share Posted September 30, 2015 . чистый MVC это где по-вашему используетя?Я работаю с вебом редко но в других сферах всегда применяю MVC. Не верите, что там нет разметки и стилей в источнике данных? Quote Link to post Share on other sites
mishanya Posted September 30, 2015 Report Share Posted September 30, 2015 В моем случае столбец body содержит заголовок (strong) и далее перечисление <p>, и по сути выглядит подобно списку на странице товара, от того вывод: можно было реализовать набор свойств отдельными строками в БД с ассоциацией с товаром, к которому они относятся, а уже шаблон выводит их в нужном виде (простите, сразу приходит в голову, но я не так опытен в вебе). вы сильно удивитесь, для набора строк как вы говорите в симпле есть свойства, их как-раз можно использовать для этого Quote Link to post Share on other sites
Solution mishanya Posted September 30, 2015 Solution Report Share Posted September 30, 2015 Я работаю с вебом редко но в других сферах всегда применяю MVC. Не верите, что там нет разметки и стилей в источнике данных? вы по-моему не хотите понять вообще ничего. если пользователю нужно сделать строку текста красным, как это сделать по вашему? если не сохранять форматирование текста в базе? Quote Link to post Share on other sites
dimas Posted September 30, 2015 Author Report Share Posted September 30, 2015 По какой то причине магазин который мы купили содержит половину свойств в body в виде тех самых <p>. вы по-моему не хотите понять вообще ничего. если пользователю нужно сделать строку текста красным, как это сделать по вашему? если не сохранять форматирование текста в базе?Здесь спорить не буду. Вы правы, что это неизбежно и нормально, и я протупил. Quote Link to post Share on other sites
mishanya Posted September 30, 2015 Report Share Posted September 30, 2015 По какой то причине магазин который мы купили содержит половину свойств в body в виде тех самых зависит от пользователя где ему привычнее писать. тут люди захотели написать все в текстовое поле. можно раскидать все в свойства товара Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.