<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум ReadyScript &mdash; Ограничение длинны поля servername таблицы images]]></title>
		<link>https://forum.readyscript.ru/topic/248/ogranichenie-dlinny-polya-servername-tablitsy-images/</link>
		<atom:link href="https://forum.readyscript.ru/feed/rss/topic/248/" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Ограничение длинны поля servername таблицы images».]]></description>
		<lastBuildDate>Wed, 24 Dec 2014 12:08:02 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Ограничение длинны поля servername таблицы images]]></title>
			<link>https://forum.readyscript.ru/post/850/#p850</link>
			<description><![CDATA[<p>servername - это же внутреннее поле нашей системы, мы туда больше 25 символов никогда не записываем. В целях экономии пространства, которое будет занимать индекс MySQL и соответственно оптимизации, установлено данное ограничение.</p><p>Если вам необходим больший объем данного поля, вы все правильно сделали, что увеличили его индивидуально для себя.</p><p>Это можно сделать:<br />1. просто в базе, тогда это будет до первого обновления модуля &quot;Блок фотографий&quot;, <br />2. можно сделать с помощью дополнительного модуля <strong>(рекомендуемое решение)</strong>, и обработки в нем события инициализации ORM объекта Photo\Model\Orm\Image</p><p>Примерно таким обработчиком (handlers.inc.php):</p><div class="codebox"><pre><code>&lt;?php
namespace ВАШ_МОДУЛЬ\Config;

class Handlers extends \RS\Event\HandlerAbstract
{
    function init()
    {
        $this
            -&gt;bind(&#039;orm.init.photo-image&#039;);
    }

    /**
    * Модифицируем ORM объект - &quot;изображение&quot;
    * 
    * @param \Photo\Model\Orm\Image $image - объект &quot;изображение&quot;
    */
    public static function ormInitPhotoImage(\Photo\Model\Orm\Image $image)
    {
        $image-&gt;__servername-&gt;setMaxLength(255);
    }
}</code></pre></div><p>Не забудьте переустановить модуль &quot;Блок фотографий&quot; (ссылка в настройках модуля), после активации вашего стороннего модуля. Система в этом случае сама изменит длину поля в базе.</p><p>3. Можно сделать с помощью создания image.my.inc.php, у которого изменена длина поля в стандартном описании полей. (не рекомендуемый способ)</p>]]></description>
			<author><![CDATA[null@example.com (admin)]]></author>
			<pubDate>Wed, 24 Dec 2014 12:08:02 +0000</pubDate>
			<guid>https://forum.readyscript.ru/post/850/#p850</guid>
		</item>
		<item>
			<title><![CDATA[Ограничение длинны поля servername таблицы images]]></title>
			<link>https://forum.readyscript.ru/post/845/#p845</link>
			<description><![CDATA[<p>Собственно сабж, `servername` VARCHAR(25) - почему такое ограничение? Переносил изображения с стороннего движка и наткнулся на такое ограничение. Поставил костыль на 50 символов.</p>]]></description>
			<author><![CDATA[null@example.com (Сергей  )]]></author>
			<pubDate>Wed, 24 Dec 2014 03:53:19 +0000</pubDate>
			<guid>https://forum.readyscript.ru/post/845/#p845</guid>
		</item>
	</channel>
</rss>
