Как использовать изображение в статическом каталоге в качестве фона в Yesodweb?


Новичок в Yesod, и мне интересно, как использовать изображение в каталоге static / img В качестве фонового изображения div. Я использую сайт строительных лесов и попробовал:

.mydiv {
  background-image: url("static/img/bg.jpg");
}

Но, похоже, url-адрес наконец меняется на http://myhost/tmp/static/img/bg.jpg.

1 2

1 ответ:

Возможно, вы использовали шаблон lucius, реальный css-файл был автоматически создан во временном расположении /tmp во время выполнения и использовал относительный путь. Вам нужен типобезопасный URL-адрес , который проверяет правильность URL-адреса во время компиляции.

Если вы используете шаблон scaffold, то вы можете представить его как @{StaticR img_bg_jpg} в соответствии с этим

Примечание: при использовании старой версии yesod-static и шаблона, stack clean может потребоваться отразить изменения в статическом каталоге.