我的应用程序会生成用户的日历,其中包含可用于预约约会的插槽。它会自动检测访客的时区,并在访客的时区显示用户的可用性。在Rails部分中生成链接的最有效方法是什么?
由于检测到的时区用于渲染显示,因此片段缓存将不起作用。
该视图生成100多个链接,访问者可以选择该链接预订约会的时间段。基准测试显示,生成链接是视图中速度最慢的部分 - 每个链接需要大约0.5ms。
通过ERB循环并生成超链接的最有效方法是什么?
我们开始使用HTML代替link_to Rails帮助程序 - 开发速度提高了2倍,但生产率提高了2倍 - 我们的结论是Heroku必须优化这些Rails帮助程序。
<a href="/<%= @profile.profile_url %>/
appointments_calendars/<%= @appointments_calendar.id %>/
booked_events/new?
timezone_name=<%= @timezone.name %>&
event_slot_id=<%= event_id %>"
class="left-slot open-slot" rel="nofollow">
<%= timeslot.strftime("%l:%M%p") %></a>
其中 @ profile.profile_url字符串,@ appointments_calendar.id是从ActiveRecord对象的整数。 @ timezone.name是一个字符串。它们不会在循环中更改 - 也就是说,它们在页面呈现时不会更改而生成。
事项标识是一个整数,时隙是时间。循环中的每个链接都不相同。
我想知道是否有一种最佳的方式来在Ruby/Rails中根据字符串缓冲的工作原理生成此HTML链接。
的循环是每天运行的整数范围,
(first_hour..last_hour).step(1.hour).each
另外,有一个更快的方式在不依赖于雇员再培训局的Rails这样做呢?
你是如何定义'event_id'和'timeslot'每次? – tyler