Ruby on rails 时间对象的就地编辑

Ruby on rails 时间对象的就地编辑,ruby-on-rails,time,edit-in-place,best-in-place,Ruby On Rails,Time,Edit In Place,Best In Place,我有一个应用程序,用于为许多员工计划轮班。我有一个Shift模型,我将shiftstart和shiftend存储为Time对象 我在表格中显示几天的页面上显示用户的班次。其思想是用户可以使用gem直接在此表中编辑shiftstart和shiftend 但我似乎不知道如何在处理时间对象时使其工作——有人对此有过一些经验或建议 我有以下代码: 视图: “08.00”:String“出现了一个“undefined method`{:type=>:input}”错误,我已经尝试将最佳就地类型切换到其他类

我有一个应用程序,用于为许多员工计划轮班。我有一个
Shift
模型,我将
shiftstart
shiftend
存储为
Time
对象

我在表格中显示几天的页面上显示用户的
班次。其思想是用户可以使用gem直接在此表中编辑
shiftstart
shiftend

但我似乎不知道如何在处理时间对象时使其工作——有人对此有过一些经验或建议

我有以下代码:

视图:


“08.00”:String“出现了一个“undefined method`{:type=>:input}”错误,我已经尝试将最佳就地类型切换到其他类型,但输入无效。

Best\u In\u Place
方法使用两个强制参数;一个对象(
shift
,在您的例子中)和一个字段(
shiftstart
shiftend
),然后是可选的选项散列(
:type=>:input
)。因此,您的代码需要如下所示:

<%= best_in_place shift, :shiftstart, :type => :input, :display_with => Proc.new { |f| f.strftime("%H.%M") } %>
:input,:display_with=>Proc.new{f | f.strftime(“%H.%M”)}%>

最佳位置
方法接受两个强制参数;一个对象(
shift
,在您的例子中)和一个字段(
shiftstart
shiftend
),然后是可选的选项散列(
:type=>:input
)。因此,您的代码需要如下所示:

<%= best_in_place shift, :shiftstart, :type => :input, :display_with => Proc.new { |f| f.strftime("%H.%M") } %>
:input,:display_with=>Proc.new{f | f.strftime(“%H.%M”)}%>

这给了我一个错误:未定义#的方法“shift_path”。。有什么想法吗?可能你没有使用
ShiftsController
来处理shift的操作。您可以将实际的移位路径(处理PUT请求的路径)提供给
最佳位置
选项,如
:path=>您的移位路径(移位)
。或者,您可以提供您的
rake路由
以获取更多信息:)。发现问题。。我的路线不对。。但你的解决方案似乎有效。。太完美了……)但是,您知道如何在编辑模式下仅显示时间-例如“08:30”。。现在它显示一个日期“2000-01-01”,时间和“+100”UTC thingy:)这有点像黑客。我看不到BIP有直接的方法来实现这一点,所以我认为您必须使用JavaScript将BIP元素上的
数据原始内容
属性更改为您希望显示为可编辑的值。这给了我一个错误:未定义的方法“shift#u path”用于#。。有什么想法吗?可能你没有使用
ShiftsController
来处理shift的操作。您可以将实际的移位路径(处理PUT请求的路径)提供给
最佳位置
选项,如
:path=>您的移位路径(移位)
。或者,您可以提供您的
rake路由
以获取更多信息:)。发现问题。。我的路线不对。。但你的解决方案似乎有效。。太完美了……)但是,您知道如何在编辑模式下仅显示时间-例如“08:30”。。现在它显示一个日期“2000-01-01”,时间和“+100”UTC thingy:)这有点像黑客。我看不出BIP有直接的方法来实现这一点,因此我认为必须使用JavaScript将BIP元素上的
数据原始内容
属性更改为您希望显示为可编辑的值。
<%= best_in_place shift, :shiftstart, :type => :input, :display_with => Proc.new { |f| f.strftime("%H.%M") } %>