在 Notion 中将文本字符串转换为日期时遇到问题

问题描述 投票:0回答:2

我正在尝试将文本字符串转换为 Notion 中的日期,以在我的数据库中构建生日提醒系统。

更大的图景,我想要一个数据库视图,其中包含下个月即将到来的生日。有些人我知道他们的实际出生日期,而另一些人我只知道他们的生日。我将不知道出生年份的人的出生日期输入为当前年份。

过滤器允许您选择与当前相关的日期,但不能选择周年纪念日即将到来的日期。因此,为了解决这个问题,我创建了一个字段,将生日重新格式化为当年的日期,并据此进行过滤。

我成功构建了新日期,但它是一个文本字符串。为了使过滤器发挥作用,需要将其格式化为日期。

我尝试了

formatDate
,但这给了我一个错误。

例如:

formatDate(concat(prop("Birthday"), ", ", prop("thisYear")), "MMMM D YYYY")

给出错误:

Type mismatch concat(prop("Birthday"), ", ", prop("thisYear")) is not a Date.

看起来

formatDate
只重新格式化现有日期,它不会将字符串转换为日期。我找不到将字符串转换为日期的函数。怎样才能做到这一点?

string date notion
2个回答
1
投票

要将文本格式的日期转换为属性日期,您必须从 1970 年 1 月 1 日开始,这是日期概念用来将每个日期转为毫秒的日期。

使用此公式,从现在起您将得到 1970 年 1 月 1 日:

dateAdd(dateSubtract(dateSubtract(dateSubtract(dateSubtract(dateSubtract(now()), 年(现在()) - 1970,“年”),月(现在()),“月”),日期(现在()), “天”),小时(现在()),“小时”),分钟(现在()),“分钟”),1,“天”)

现在您必须在生日道具中添加您的月份、年份和日期。

为此,您只需使用 dateAdd 公式,这样您将拥有:

dateAdd(dateAdd(dateAdd(dateSubtract(dateSubtract(dateSubtract(dateSubtract(dateSubtract(now()), 年(现在()) - 1970,“年”),月(现在()),“月”),日期(现在()), “天”),小时(now()),“小时”),分钟(now()),“分钟”), prop("Giorni"), "天"), prop("Mese") - 1, "月"), prop("Anno") - 1970 年,“年”)

你必须考虑到,在我的示例中,prop("Giorni")、prop("Mese") 和 prop("Anno") 已经是数字了。

如果将它们放入文本字段,则首先必须使用切片公式提取它们,然后使用 toNumber 公式将它们转换为数字。

我希望我能帮助你,抱歉我的英语不好,但我的母语不是英语。

再见


0
投票

嘿我有一个类似的问题也许有人可以帮助我。就时间盒而言,我有一个包含日期时间的 tex 字段:例如 06:00 - 07:00。有没有办法将其转换为可用时间?

© www.soinside.com 2019 - 2024. All rights reserved.