Да, ожидается ... В том смысле, что ожидается, что передача по внешнему URL приведет к неожиданным результатам.
Вы должны передать внутренний адрес в url_for
внутренний URI записывается в виде:
@route_name?param=value
moduleName/actionName?param=value
Вы также можете представить аргументы для внутреннего URL-адреса отдельно, используя имя маршрута иобъект (если это маршрут объекта или коллекция маршрутов) в этих случаях он будет выглядеть так:
url_for('route_name', params);
Где params
- это либо объект, ожидаемый маршрутом (обычноЭкземпляр модели Doctrine или Propel) или массив параметров.
Эти внутренние URI затем преобразуются во внешний URL-адрес системой маршрутизации.Вы получаете неверные результаты, потому что вы пытаетесь передать внешний URL, что не имеет смысла, потому что, если вы знаете URL, тогда нет причин для его маршрутизации: -)