我需要发送一个post
请求到REST API,其中包含一个Date
值。但是,REST API和MySQL接受Timestamp
。以下是我准备当前日期的方法
User user = User(
name: nameTxtController.text,
email: emailTxtController.text,
phone: mobileTxtController.text,
userLanguage: userLanguage,
userRights: userRight,
lastUpdated: DateTime.now(),
dateCreated: DateTime.now()
);
如何将其转换为Timestamp
?
答案 0 :(得分:0)
只需执行以下操作
User user = User(
name: nameTxtController.text,
email: emailTxtController.text,
phone: mobileTxtController.text,
userLanguage: userLanguage,
userRights: userRight,
lastUpdated: DateTime.now().millisecondsSinceEpoch,
dateCreated: DateTime.now().millisecondsSinceEpoch
);
要使其正常工作,您的user.lastUpdated
和user.dateCreated
在模型中的类型应为int
(如果您来自Java背景,则为bean
)
答案 1 :(得分:0)
1)在pubspec.yaml上
导入最新版本的cloud_firestore插件
https://pub.dartlang.org/packages/cloud_firestore
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2`enter code here`
cloud_firestore: ^0.9.13 //import this, with last version
2)在您的文件上。dart
import 'package:cloud_firestore/cloud_firestore.dart';
3)DateTime到TimeStamp / TimeStamp到DateTime
DateTime currentPhoneDate = DateTime.now(); //DateTime
Timestamp myTimeStamp = Timestamp.fromDate(currentPhoneDate); //To TimeStamp
DateTime myDateTime = myTimeStamp.toDate(); // TimeStamp to DateTime
print("current phone data is: $currentPhoneDate");
print("current phone data is: $myDateTime");
4)控制台
I/flutter (15177): current phone data is: 2019-04-17 11:28:26.953530
I/flutter (15177): current phone data is: 2019-04-17 11:28:26.953530
使用您的代码
User user = User(
name: nameTxtController.text,
email: emailTxtController.text,
phone: mobileTxtController.text,
userLanguage: userLanguage,
userRights: userRight,
lastUpdated: myTimeStamp //here
dateCreated: myTimeStamp //here
);
答案 2 :(得分:0)