我在rails应用程序中有一条路线:
get 'welcome/usertypeone' => 'welcome#usertypeone'
这在浏览器中看起来不太好,因为URL如下所示:
www.mywebsite/welcome/usertypeone
任何方式我都可以改变网址的方式:
www.mywebsite/welcome/teacher
无需更改路线本身,因为我需要在大量地方更改路线。只是看看是否有更好的解决方案。
答案 0 :(得分:3)
如果你明确定义了路线(就像你一样,而不是使用var myDropzone = new Dropzone("div#myDrop", {
addRemoveLinks: true,
autoProcessQueue: false,
parallelUploads: maxParallelCount,
url: "#",
transformFile: function transformFile(file, done) {
zip = new JSZip();
zip.file(file.name, file);
zip.generateAsync(
{
type:"blob",
compression: "DEFLATE"
}
).then(function(content) {
done(content);
});
},
init: function() {
this.on("addedfile", function(file) {
if (jQuery.inArray(file.name, addedfiles) > -1) {
myDropzone.removeFile(file);
}
if (jQuery.inArray(file.name, DOC_NAMES) == -1) {
myDropzone.removeFile(file);
}
else {
addedfiles.push(file.name);
queueCount += 1;
}
});
this.on("removedfile", function(file) {
console.log(file.name);
if (jQuery.inArray(file.name, addedfiles) > -1) {
// addedfiles.pop(file.name);
var indOfAddedFiles = addedfiles.indexOf(file.name);
console.log("indOfAddedFiles -> "+ indOfAddedFiles);
addedfiles.splice(indOfAddedFiles, 1);
queueCount -= 1;
}
})
}
等),你可以按照自己的意愿配置路线。
resource
这将使get 'welcome/teacher' => 'welcome#usertypeone'
路由到同一控制器和操作。
但是,您需要在整个应用程序中更新从www.mywebsite.com/welcome/teacher
到welcome_usertypeone_path
的路线。您的文本编辑器可能具有搜索和替换功能,使其成为10秒钟。
答案 1 :(得分:0)
也许你想要的是这样的:
get 'welcome/:user_type' => 'welcome#usertypeone'
这将采用welcome/
之后的任何内容,并将其params
作为params[:user_type]
,但仍会转到WelcomesController
和usertypeone
动作。
答案 2 :(得分:-1)
您可以转到routes.rb
文件并尝试:
get 'welcome/teacher' => 'welcome#usertypeone'
然后你应该得到你需要的网址:www.mywebsite/welcome/teacher