Ответ 1
AccountNameHolder должен быть нацелен на имя DatabaseField из таблицы Accounts. Как это сделать?
Я не совсем уверен, что вы хотите, но, возможно, вы должны изменить свое чужое поле как фактический тип вместо имени:
@DatabaseField(foreign = true)
private Account account;
Внутри ORMLite будет храниться поле account_id
(возможно, имя строки) в таблице Customer
, но вам не нужно беспокоиться о что. Помните, что когда вы запрашиваете Customer
, Account
, установленный в поле Account
, будет просто задано поле идентификатора. Чтобы ORMLite также просматривал учетную запись, вам нужно установить foreignAutoRefresh=true
.
Как отметил @Lalit, вот несколько документов по этому вопросу. Мы потратили много времени на документацию, поэтому это должно быть полезно.
Кроме того, есть пример кода примера для иностранных полей.
Надеюсь, что это поможет.