Quero renomear algumas URLs de caminho
por exemplo: - http://localhost:4200/c/biotechnology/5/l/calendar
em vez de calendar, quero renomeá-lo para events.
http://localhost:4200/agenda
em vez de agenda, quero mudá-lo para calendar
você pode me aconselhar como fazer isso, posso fazer isso através do painel de administração do site.
ou precisa ser feito através de código,
se precisar ser feito no backend, qual é o arquivo exato onde posso alterá-lo ..
sou familiarizado com django, sou novo em rails.
por favor me ajude
Dê uma olhada em:
This guide covers the user-facing features of Rails routing.After reading this guide, you will know: How to interpret the code in config/routes.rb. How to construct your own routes, using either the preferred resourceful style or the match method....
Estas não parecem ser rotas principais.
agenda, por exemplo, não existe na minha instância - você instalou um plugin?
Se sim, olhe o código do plugin, especificamente em config/routes.rb (ou potencialmente em plugin.rb)
Sugiro que gaste algum tempo lendo e entendendo a estrutura do código-fonte.
3 curtidas
@merefield , Não, eu não instalei nenhum plugin. Nas configurações de categoria, se você habilitar a lista de tópicos da agenda, um botão será habilitado na página inicial para visualizar eventos de categorias específicas.
Então, eu renomeei esse botão e agora quero renomear a URL também, mas não consigo encontrar como fazer isso.
Isso é estranho, porque não existe tal rota no Discourse base.
https://raw.githubusercontent.com/discourse/discourse/main/config/routes.rb
… fique à vontade e pesquise por “agenda”
Não acredito que exista tal seção nas configurações de Categoria prontas para uso
Acredito que você deve ter um plugin instalado, possivelmente este:
end
::NewPostManager.add_handler(1) do |manager|
if manager.args['event'] && NewPostManager.post_needs_approval?(manager) && NewPostManager.is_first_post?(manager)
NewPostManager.add_plugin_payload_attribute('event') if NewPostManager.respond_to?(:add_plugin_payload_attribute)
end
nil
end
Discourse::Application.routes.prepend do
get "calendar.ics" => "list#calendar_ics", format: :ics, protocol: :webcal
get "calendar.rss" => "list#calendar_feed", format: :rss
get "agenda.rss" => "list#agenda_feed", format: :rss
%w{users u}.each do |root_path|
get "#{root_path}/:username/preferences/webcal-keys" => "users#preferences", constraints: { username: RouteFormat.username }
end
get "c/*category_slug_path_with_id/l/calendar.ics" => "list#calendar_ics", format: :ics, protocol: :webcal
get "c/*category_slug_path_with_id/l/calendar.rss" => "list#calendar_feed", format: :rss
minha culpa, você estava certo, é o plugin de eventos do discourse, eu acho
1 curtida