我正在尝试创建一个href以将用户(提供者)名称与用户(提供者)帐户视图链接起来。
我远非这方面的专家 - 试图从代码中引用用户(提供者)帐户的其他地方复制脚本的一部分。
我尝试添加链接的地方是:
= render partial: 'services/partials/messages/original_message', locals: { header: t('html.text.consultation_with.for_provider', name: @provider_user.name, type: t("element_names.#{@service.service_type}")),...
脚本中用于引用用户(提供者)帐户的部分如下所示:
[href="#{provider_path(provider)}" id="provider-#{provider.id}"]
所以我尝试将这两者结合起来:
= render partial: 'services/partials/messages/original_message', locals: { header: t('html.text.consultation_with.for_provider', name: [href="#{provider_path(provider)}" id="provider-#{provider.id}"], type: t("element_names.#{@service.service_type}")),...
并且对它不起作用并不感到惊讶。
您不能将 slim 元素语法(带有方括号的语法,slim 本身用来创建元素的属性)与 ruby 代码(要render
的参数)混合在一起,这只是一个简单的 ruby 方法调用!
也许这对你有用,或者一些改编:
= render partial: 'services/partials/messages/original_message',
locals: {
header: t('html.text.consultation_with.for_provider',
name: @provider_user.name,
provider_link_href: provider_path(provider),
provider_link_id: "provider-#{provider.id}",
type: t("element_names.#{@service.service_type}")),
...
}
然后在部分,像
a[href=provider_link_href id=provider_link_id]
Text of the link