首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态设置的Octobercms minDate

动态设置的Octobercms minDate
EN

Stack Overflow用户
提问于 2018-02-06 01:00:26
回答 2查看 457关注 0票数 0

我需要动态设置

代码语言:javascript
复制
public function filterFields($fields, $context = null)
{
   $return_date = $fields->return_date->value;
   if(empty($return_date)) {
     $fields->return_date->minDate = Carbon::now();
   }
}

不是工作!

EN

回答 2

Stack Overflow用户

发布于 2018-02-06 01:16:49

嗯,可能是datetime小部件在init时间是setting this restrictions,而filterfields是在该之后触发的,所以它不能使用新的修改后的数据。

为了克服这个,我们在初始化之前设置配置数据,我们使用controller method formExtendFieldsBefore将这个方法添加到你的controller

代码语言:javascript
复制
public function formExtendFieldsBefore($form) {
    $form->fields['return_date']['minDate'] = \Carbon::now()->format('Y-m-d');
}

它应该可以工作,请检查这个,如果遇到任何问题,请发表意见。

票数 1
EN

Stack Overflow用户

发布于 2018-02-07 01:53:22

您应该注意模型的fields.yaml -您在哪里定义了return_date字段,它是在主选项卡中还是在辅助选项卡中?

尝试:

代码语言:javascript
复制
public function formExtendFieldsBefore( $widget ) {
    $widget->tabs['fields']['return_date']['minDate'] =  Carbon::now()->format('Y-m-d');
}

代码语言:javascript
复制
public function formExtendFieldsBefore( $widget ) {
    $widget->secondaryTabs['fields']['return_date']['minDate'] =  Carbon::now()->format('Y-m-d');
    // notice here $widget->secondaryTabs Vs $widget->tabs
}

这应该可以工作,如果它不能,请分享您的fields.yaml文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48627695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档