я использую VentureCraft/revisionable
в моем проекте Laravel. Я хотел работать с несколькими моделями одновременно, но поскольку ревизионная проверка не позволяет мне это делать, я делал это в отдельных моделях.
Был один случай, когда я получил этот ревизионный вывод, как это
Chris changed status from 4 to 5.
Но вместо этого я хотел что-то вроде этого:
Chris changed status from New to In progress.
4 и 5 были внешними ключами к названию New and Ingress.
Как я могу использовать иностранные ценности отношения в ревизионной.
Я никогда не использовал этот пакет, но, глядя на документацию, похоже, что вам нужно реализовать identifiableName()
метод в родственной модели. Вместо отображения внешних ключей, он будет отображать все, что возвращается из identifiableName()
метод.
Итак, если ваша родственная модель Status
, вы бы сделали что-то вроде:
class Status extends Eloquent {
use Venturecraft\Revisionable\RevisionableTrait;
public function identifiableName() {
return $this->name;
}
}
Делай то, что сказал @patricus, но вместо
return $this->name;
укажите значение, которое вы хотите изменить для отображения
return $this->[whatever field you have in the db];