Я предлагаю do not create accessor
с тем же именем, что и имя столбца, потому что вы никогда не сможете получить его исходное значение вне модели.
вместо этого используйте отдельное имя для средства доступа .
public function getImageFullUrlAttribute(){ //or any name you want
return ...
}
Затем вы вызываете эту функцию, удаляя слова get
и Attribute
в приведенном выше примере, имя функции будет imageFullUrl()
Затем вы можете вызвать ее $image->imageFullUrl()
Более того:
вы также можете добавить его к каждому ответу, используя $appends
свойство класса модели.
$appends = ['image_full_url'];
// this is snake_case name of above function excluding get and Attribute words
Теперь вы можете вызывать его с помощью $image->image_full_url
Но будьте осторожны при использовании $appends
, потому что он может вызывать нагрузку, если вы используете в нем отношение, которое замедлит время отклика до очень медленного.
Я предлагаю использовать только $appends
на столбцы и не использовать никаких связей в нем.