我正在尝试将calendaer_date_select链接到选择字段,因此选择列表将按选择日期进行过滤。我按照here
所述的说明进行操作我在activescaffold配置中:
config.columns[:order_date].form_ui = :calendar_date_select
config.columns[:order_date].options = {:update_column => :sale}
config.columns[:sale].form_ui = :select
......并在帮手中:
def options_for_association_conditions(association)
if association.name == :sale
{'sales.order_date' => @record.order_date}
else
super
end
end
问题是从javascript小部件中选择一个日期 不会触发select来刷新。但是,如果我输入日期 它确实如此。有任何想法吗?
答案 0 :(得分:0)
这是今天早上修复的ActiveScaffold错误。因此,再次克隆存储库将解决您的问题。
对于记录,ActiveScaffold用于监视更改的方法不会捕获Calendar Date Select设置字段的方式。 ActiveScaffold监视字段上的更改事件以进行列更新。更改事件由字段值在获取和失去焦点之间进行修改来触发。日历日期选择修改值而不给该字段赋予或移除焦点。
如果您不想更新插件,可以通过执行以下操作将其与自己一起破解:
config.columns[:order_date].options = {:update_column => :sale}
到
config.columns[:order_date].options = {:update_column => :sale,
:before_show => 'this.focus()', :onchange => 'this.blur()'}