能否修改Appwrite文档中的$createdAt字段?
Appwrite 创建文档时能否修改 $createdAt 字段?
首先明确:Appwrite 的 $createdAt 是系统自动维护的只读字段,创建文档时你无法直接修改这个字段的值——哪怕你在请求的 data 参数里传入 createdAt 或者 $createdAt,Appwrite 都会直接忽略,最终还是会用服务器生成的创建时间填充这个字段。
如果你的业务场景需要自定义文档的创建时间,可以这么处理:
- 在文档的
data中添加一个自定义字段,比如customCreatedAt,把你想要的时间值(比如 Unix 时间戳或者 ISO 格式字符串)存在这个字段里。后续查询或业务逻辑里,用这个自定义字段来替代系统的$createdAt即可。 - 注意不要用
$开头命名自定义字段,Appwrite 中所有$前缀的字段都是系统内置的只读字段,用户无法干预它们的值。
举个简单的创建文档示例(用 JavaScript SDK):
const promise = databases.createDocument( '[DATABASE_ID]', '[COLLECTION_ID]', ID.unique(), { customCreatedAt: '2024-01-01T00:00:00Z', // 自定义的创建时间 // 其他业务字段... } );
内容的提问来源于stack exchange,提问作者Alexis
相关产品推荐
相关产品推荐

