【问题标题】:rails compact writing of string slicingrails 字符串切片的紧凑编写
【发布时间】:2014-07-12 07:42:50
【问题描述】:

在我的 rails 4 应用程序中,我使用 haml。鉴于我写了这样的字符串:

  %td= link_to admin_organization.introtext[0..40]+"...", admin_organization_type_organization_path(organization_type_id: admin_organization.organization_type_links.map { |e| e.organization_type_id }, id: admin_organization)

但是当这个字段“introtext”为空时,我得到错误并且我的应用程序崩溃了。

我知道如何检查它:

-if admin_organization.introtext.present?
 blablabla

但这是很长的代码。也许还有其他方法可以做到这一点?编写字符串切片并检查它是否为空 - 没有显示此链接到?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 haml


    【解决方案1】:

    使用link_to_if,对于切片,我将使用truncate 文本辅助方法:

    %td= link_to_if admin_organization.introtext.present?, truncate(admin_organization.introtext, length: 40), admin_organization_type_organization_path(organization_type_id: admin_organization.organization_type_links.map(&:organization_type_id), id: admin_organization)
    

    附带说明:您确定要将一组 ID 传递给 organization_type_id 吗?如果您使用的是 RESTful 路由,这似乎没有多大意义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-27
      • 2015-10-17
      • 1970-01-01
      • 2021-07-01
      相关资源
      最近更新 更多