Одним из грязных способов сделать это было бы использование файла cookie для хранения идентификатора запрашиваемого объекта. Мне не очень нравится эта идея, и может быть очень сложно получить поддержку для поддержки, если у вас нет опыта написания/расширения фреймворков.
Поддержка некоторых фреймворков с использованием атрибута id = вместо вашего URL-адреса. Если этот параметр включен как параметр POST, он не будет виден, но связывание страниц вместе с POST будет сложным, поскольку оно предназначено для представления данных формы.
Метод, который я хотел бы предложить, заключается в том, чтобы использовать что-то помимо идентификаторов, чтобы однозначно идентифицировать ваши объекты, если это реальное требование. Затем включите это в свой URL. Хотя это не идеальный дизайн с точки зрения базы данных, у него есть преимущества. Сначала вы должны рассмотреть, почему вы хотите скрыть эту информацию. Если это для целей SEO, использование имени элемента, а не его идентификатора - это то, что вы хотите в URL. Реальная проблема заключается в том, что если вы просто скрываете эту информацию в каком-то другом канале передачи данных, у вас есть тот же URL-адрес для разных ресурсов. Это подпарам по многим причинам, не последним из которых является SEO и пользовательские закладки. Использование читаемого человеком ключа разрешает как ситуации, так и другие, одновременно приводя в бешенство вашего администратора баз данных. Использование этого метода также должно легко работать в каркас либо напрямую, либо с помощью дополнительного кода в контроллере для перевода, что может привести вас к правильной работе с администратором баз данных.
slugfield - хороший выбор! – dm03514