arg (1) не будет именем пользователя или UID и не будет работать так, как вы ожидаете.Однако мы можем попытаться выполнить поиск и вернуться, чтобы предоставить значение аргумента по умолчанию окольным путем.
ДЕЙСТВИЕ, ЧТОБЫ ПРИНЯТЬ, ЕСЛИ АРГУМЕНТ НЕТ: установлен на Пустой текст, или, 404. Независимо от ваших предпочтений.
Укажите код PHP для Валидатора:
if ($argument) {
$user = db_fetch_object(db_query('SELECT name FROM {users} WHERE name = "%s"', $argument));
if ($user) {
$handler->argument = $user->name;
return $user->name;
}
}
Здесь вы должны убедиться, что arg (1) является именем пользователя на определенных страницах.не будет содержать (или не позволять) проходить через символы, вызывая SQL-инъекцию.
Паттернами имени пользователя можно управлять с помощью Pathauto.Однако это не помешает кому-то ввести нежелательную информацию в URL, и Drupal / Views должен иметь возможность обходить символы в URL.Вы можете проверить это, установив ДЕЙСТВИЕ, ЧТОБЫ ПРИНЯТЬ, ЕСЛИ АРГУМЕНТ НЕ ПРОВЕРЯЕТ для отображения страницы 404 или пустого текста.
Попробуйте это и используйте часть предварительного просмотра Views и посмотрите,это возвращает что-нибудь для вас.Я делал это не покладая рук, но все время делаю похожие вещи с разными типами контента или поисков.
Вы также можете попробовать установить для Validator значение User, и разрешить как числовые UID, так и строковые имена пользователей.,Я не использовал эту настройку, но, скорее всего, она будет работать.