Здравствуйте, в моем проекте я использую VentureCraft / revisionable https://github.com/VentureCraft/revisionable Это дополнение к записи истории изменений записей в базе данных. Все отлично работает, но когда я возвращаю историю на страницу, скрипт возвращает результаты в виде идентификатора. Это мой стол «Продукты» products_table а это таблица «ревизии» revisions_table Эта таблица связана с таблицами: статьи, пользователи и категории. Теперь изменение истории выглядит так:
«Пользователь 1 меняет название статьи с 2 на 1»
Я хочу, чтобы история изменения выглядела так:
«Пользователь JACK меняет название статьи с SHOES на BALL»
Я пытаюсь использовать это ссылка на сайт.
Метод identifiableName () с файлом Revisionable.php выглядит так:
public function identifiableName()
{
return $this->getKey();
}
В модель product.php я добавил:
public function identifiableName(){
return $this->article_name;
}
или это:
public function identifiableName(){
return $this->article()->article_name;
}
Но это не работает.
ОК, я нашел решение этой проблемы:
Только используйте:
whereId
или же find
или же faindOrFail
пример:
article::whereId( $hist->old_value )->first()->article_name
или же
article::find( $hist->old_value )->article_name
или же
article::findOrFail( $hist->old_value )->article_name
куда article:name
это имя столбца в таблице статей.
Других решений пока нет …