Поскольку Laravel Nova - это просто интерфейс для манипулирования моделями Eloquent, я бы сделал это, используя Laravel Events и Observers .
Да, использование "нового" модификатора эффективно заставит предупреждение компилятора замолчать, но Вы явно скрываете метод экземпляра со статическим методом. (Это отличается, чем переопределение метода.) Обычно Вы не хотите скрывать метод экземпляра кроме с очень серьезными основаниями, и Вы действительно не должны скрывать его со статическим методом, поскольку тот действительно изменяет семантику поведения вызова. Каждый объект в.NET имеет метод экземпляра под названием ToString (), который имеет определенное поведение, которое ожидают разработчики; путем сокрытия того поведения с новым статическим методом Вы изменяете то ожидание, которое может привести к большому количеству беспорядка.
Кто Вы "к строковому представлению"? Статические классы обычно не содержат внутреннее состояние, таким образом, действительно не должно быть никаких внутренних данных для обеспечения как логический вывод ToString () вызов. Можно хотеть заново продумать дизайн класса или обеспечить другое имя метода, которое более ясно указывает на цель метода, не скрывая экземпляр ToString ().
В статическом классе Вы не можете переопределить ToString..ToString, метод экземпляра, и по определению статический класс может только иметь статических участников.
Также, почему Вы хотели бы переопределить.ToString ()? Нет никакого способа получить экземпляр класса и следовательно никакого способа вызвать функцию.
Примечание: Используя новый синтаксис не переопределит.ToString. Это создаст нового участника, который абсолютно не связан с Объектом. ToString () метод.
Хорошо, таким образом, в задавании вопроса, я нашел ответ:
Новый Модификатор:
http://msdn.microsoft.com/en-us/library/51y09td4 (По сравнению с 71) .aspx#vclrfnew_newmodifier
вот метод теперь:
общедоступная новая статическая строка ToString ()
Спасибо, Keith