如何使用 ActiveAndroid 保存所有嵌套的 类?
how to save all nested classes using ActiveAndroid?
我在我的项目中使用了 AciveAndroid 库。我有一个报价:
我有一些 classes
@Table(name = "Users")
public class User extends Model {
@Expose
@Column(name = "uuid")
@SerializedName("uuid")
private String uuid;
@Expose
@Column(name = "userInfo")
@SerializedName("userInfo")
private UserInfo userInfo;
...
}
和
@Table(name = "UserInfos")
public class UserInfo extends Model {
@Expose
@Column(name = "user")
@SerializedName("user")
private User user;
@Expose
@Column(name = "email")
@SerializedName("email")
private String email;
@Expose
@Column(name = "firstName")
@SerializedName("firstName")
private String firstName;
...
}
和其他 classes.
如果我想保存对象用户,我会这样做:
user.save();
并得到一个错误。
我这样做:
userInfo.save();
user.save();
一切都很好。
但我有许多 classes 有其他 classes。而且我不能导致永久方法 save();每个 class 字段。
我希望当您调用 user.save();
时保存所有嵌套的 classes。怎么做?
@Table(name = "Users")
public class User extends Model {
@Expose
@Column(name = "uuid")
@SerializedName("uuid")
private String uuid;
@Expose
@Column(name = "userInfo", onUpdate = ForeignKeyAction.CASCADE, onDelete = ForeignKeyAction.CASCADE)
@SerializedName("userInfo")
private UserInfo userInfo;
...
}
我在我的项目中使用了 AciveAndroid 库。我有一个报价:
我有一些 classes
@Table(name = "Users")
public class User extends Model {
@Expose
@Column(name = "uuid")
@SerializedName("uuid")
private String uuid;
@Expose
@Column(name = "userInfo")
@SerializedName("userInfo")
private UserInfo userInfo;
...
}
和
@Table(name = "UserInfos")
public class UserInfo extends Model {
@Expose
@Column(name = "user")
@SerializedName("user")
private User user;
@Expose
@Column(name = "email")
@SerializedName("email")
private String email;
@Expose
@Column(name = "firstName")
@SerializedName("firstName")
private String firstName;
...
}
和其他 classes.
如果我想保存对象用户,我会这样做:
user.save();
并得到一个错误。 我这样做:
userInfo.save();
user.save();
一切都很好。
但我有许多 classes 有其他 classes。而且我不能导致永久方法 save();每个 class 字段。
我希望当您调用 user.save();
时保存所有嵌套的 classes。怎么做?
@Table(name = "Users")
public class User extends Model {
@Expose
@Column(name = "uuid")
@SerializedName("uuid")
private String uuid;
@Expose
@Column(name = "userInfo", onUpdate = ForeignKeyAction.CASCADE, onDelete = ForeignKeyAction.CASCADE)
@SerializedName("userInfo")
private UserInfo userInfo;
...
}