Мой rails_helper пропустил это:
CarrierWave.configure do |config|
config.root = Rails.root.join('spec/fixtures')
config.cache_only = true
config.enable_processing = false
config.base_path = "/"
end
Последний ответ, но Вы могли просто сохранить это простым и применить класс CSS к объекту htmlAttributes.
<%= Html.ActionLink("Button Name", "Index", null, new { @class="classname" }) %>
и затем создают класс в Вашей таблице стилей
a.classname
{
background: url(../Images/image.gif) no-repeat top left;
display: block;
width: 150px;
height: 150px;
text-indent: -9999px; /* hides the link text */
}
Сделайте то, что Mehrdad заявляет - или используйте помощника URL от HtmlHelper
, дополнительный метод как Stephen Walther описывает здесь , и сделайте свой собственный дополнительный метод, который может использоваться для рендеринга всех ссылок.
Тогда будет легко представить все ссылки как кнопки/привязки или какой бы ни Вы предпочитаете - и, самое главное, можно передумать позже, когда Вы узнаете фактическое предпочтение некоторого другого способа сделать ссылки.
Вы не можете сделать этого с Html.ActionLink
. Необходимо использовать Url.RouteUrl
и использовать URL для построения элемента, который Вы хотите.
Еще более поздний ответ, но я только что столкнулся с аналогичной проблемой и в итоге написал свое собственное расширение HtmlHelper для ссылки на изображение .
Вы можете найти его реализацию в моем блоге по ссылке выше.
Только что добавлено на случай, если кто-то выследит реализацию.
Мне нравится использовать Url.Action () и Url.Content () следующим образом:
<a href='@Url.Action("MyAction", "MyController")'>
<img src='@Url.Content("~/Content/Images/MyLinkImage.png")' />
</a>
Строго говоря, Url.Content нужен только для Путь на самом деле не является частью ответа на ваш вопрос.
Спасибо @BrianLegg за указание на то, что здесь следует использовать новый синтаксис представления Razor. Пример был обновлен соответствующим образом.