首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Rails -没有匹配的路由[POST] "/page/new“

Rails是一个基于Ruby语言的开发框架,用于构建Web应用程序。它采用了MVC(模型-视图-控制器)架构模式,提供了一套丰富的工具和库,简化了Web应用程序的开发过程。

对于你提到的问题,"没有匹配的路由[POST] '/page/new'",这是Rails框架在处理请求时发生的错误。该错误通常表示在路由配置中没有定义匹配该请求的路由。

解决这个问题的方法是检查你的路由配置文件(通常是config/routes.rb),确保你有一个匹配该请求的路由定义。在这种情况下,你需要添加一个POST请求的路由来处理"/page/new"路径。

示例代码如下:

代码语言:txt
复制
# config/routes.rb
Rails.application.routes.draw do
  # 其他路由配置...

  post '/page/new', to: 'pages#create'
end

上述代码中,我们使用post方法来定义一个POST请求的路由,将其映射到pages控制器的create动作上。你可以根据你的实际需求修改控制器和动作的名称。

关于Rails的路由配置,你可以参考腾讯云的产品文档,了解更多关于腾讯云的Rails部署和配置信息:腾讯云云服务器

希望这个答案能够帮助到你解决问题!如果你有任何其他的问题,欢迎继续提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

绕过GitHubOAuth授权验证机制($25000)

# serve authorization page HTMLelse # grant permissions to append 所以,最后路由router会接受GET 或 POST 请求,而控制器...乍一看,这不算是什么安全问题,但是,深入探究发现,路由router机制存在隐患。 Rails 路由能够识别 URL 地址,并把它们分派给控制器动作或 Rack 应用进行处理。...HTTP HEAD请求时Rails路由在说谎 HEAD方法跟GET方法相同,只不过服务器响应时不会返回消息体。一个HEAD请求响应中,HTTP头中包含元信息应该和一个GET请求响应消息相同。...所以Rails以及其它一些网络框架采用了一个聪明技巧:它试图将HEAD请求路由到与GET请求相同地方,然后运行控制器代码,以此省略掉消息响应体。...发送一个授权验证HEAD请求,将会发生什么情况?前面我们说过,Rails路由会把它当成GET请求来处理,所以它会被发送到控制器中。

2.7K10

Rails路由

用于生成路径和URL地址辅助方法 在创建资源路由时,会同时创建多个可以在控制器中使用辅助方法,如上面的资源路由会创建以下方法: photos_path:返回值为 /photos new_photos_path...方法时传入一组对象,Rails会自动确定对应路由Rails能够识别各个实例,自动使用...可以一次匹配多个HTTP方法: match 'photos', to: 'photos#show', via: [:get, :post] 通过 via: :all 选项,路由可以匹配所有的HTTP方法...覆盖 new 和 edit 片段 :path_names 选项用于覆盖路径中自动生成 new 和 edit 片段 resources :photos, path_names: { new: 'make...和 edit 动作上 限制创建路由 Rails 默认会为每个 REST 式路由创建7个默认动作,可以使用 :only 和 :except 选项来微调此行为。

4.4K20

基于Koa2搭建Node.js实战(含视频)☞ 路由koa-router

要实现上述功能,如果不借助 koa-router 或者其他路由中间件,我们自己去处理路由,那么写法可能如下所示: const Koa = require('koa'); const app = new...router.post 方法中 url 规则一样请求,如果匹配不到的话就匹配和 router.all 方法中 url 规则一样请求。...上述代码中没有处理异常,当请求都无法匹配时候,我们可以跳转到自定义 404 页面,比如: router.all('/*', async (ctx, next) => { ctx.response.status...var router = new Router({ prefix: '/users' }); router.get('/', ...); // 匹配路由 "/users" router.get...下一节中,我们将学习下如何响应浏览器各种请求。 下一篇:POST/GET请求——常见请求方式处理

2.1K100

node框架express研究

(get、post路由中间件 2.1 index.js文件 上面我们也看见了new一个新路由过程,index.js用于处理存储中间件数组。...普通中间件:app.use,不管是什么请求方法,只要路径匹配就执行回调函数 路由中间件:根据HTTP请求方法中间件,路径匹配和方法匹配才执行 所以有两种Layer: 普通中间件Layer,保存了name...而route对象Layer实例layer是没有route变量,有method对象,保存了HTTP请求类型,也就是带了请求方法路由中间件。...Route类用于创建路由中间件,并且创建拥有多个方法(多个方法是指app.get('/page',f1,f2...)中那堆回调函数f1、f2...)layer(对于同一个路径app.get、app.post...view) {//第一次进,如果没有设置视图 var View = this.get('view'); view = new View(name, { //引用了view.jsView

92320

node框架express研究0.前言1. 从入口开始1.1入口1.2 proto1.2.1 app.init方法1.2.2 app.handle方法1.2.3 每一个method处理1.2.4

(get、post路由中间件 2.1 index.js文件 上面我们也看见了new一个新路由过程,index.js用于处理存储中间件数组。...普通中间件:app.use,不管是什么请求方法,只要路径匹配就执行回调函数 路由中间件:根据HTTP请求方法中间件,路径匹配和方法匹配才执行 所以有两种Layer: 普通中间件Layer,保存了name...而route对象Layer实例layer是没有route变量,有method对象,保存了HTTP请求类型,也就是带了请求方法路由中间件。...Route类用于创建路由中间件,并且创建拥有多个方法(多个方法是指app.get('/page',f1,f2...)中那堆回调函数f1、f2...)layer(对于同一个路径app.get、app.post...view) {//第一次进,如果没有设置视图 var View = this.get('view'); view = new View(name, { //引用了view.jsView

1K30

使用Ruby on Rails和Bootstrap开发社交网络平台详细教程

Ruby on Rails提供了强大后端支持,而Bootstrap则提供了灵活前端组件,使得我们可以轻松创建现代化用户界面。...步骤1:安装Ruby on Rails首先,确保你系统已经安装了Ruby和Ruby on Rails。...你可以使用以下命令进行安装:gem install rails步骤2:创建Rails应用使用以下命令在终端中创建一个新Rails应用:rails new social_network然后进入应用目录:...然后运行以下命令安装和生成Bootstrap:bundle installrails generate bootstrap:install步骤7:创建社交网络功能在config/routes.rb中添加社交网络功能路由...:resources :friendships, only: [:create, :destroy]resources :posts生成Post模型和控制器:rails generate model Post

15810

koa源码阅读-koa-router

// curl /Index => 404 strict strict与sensitive功能类似,也是用来设置让路径匹配变得更加严格,在默认情况下,路径结尾处/是可选,如果开启该参数以后,如果在注册路由时尾部没有添加.../,则匹配路由也一定不能够添加/结尾: const Router = require('koa-router') const router = new Router({ strict: true...URL,但是在中间件中改变ctx.routerPath可以很轻易使路由匹配到我们想转发地方去 // 老版本登录逻辑处理 router.post('/login', ctx => { ctx.body...= new Router({ prefix: '/page1' }) const routerPage2 = new Router({ prefix: '/page2' }) middlewareRouter.get.../page2/page1 一定要小心使用,不要认为这样方式可以用来实现路由复用 请求处理 以及,终于来到了最后一步,当一个请求来了以后,Router是怎样处理

90320

zblog1.7版本实现搜索功能伪静态图文教程

1.7 新版路由增加了路由系统,一般来说,我们只要向系统注入一条路由规则,再实现该条路由 call 函数,匹配成功后向该函数传入一个数组参数,就实现路由功能了。...'call' => 'ViewSearch', //呼叫函数,匹配成功后call之,并传入一个含有各种匹配参数数组 'urlrule' => '{%host%}search/{%q%}_{%page...%}.html',//规则主体 'args' => array (          'q' => '[^\\/_]+',//q是搜索关键字,支持正则匹配 'page',//page是页码 )..., 'only_match_page' => false,//为假表示可以匹配没有{%page%}参数url,默认如此可以不加这一行配置     );     $zbp->RegRoute($route...路由系统在匹配到规则后,向 call 所指定函数 传入一个 array 数组,其格式如下 function ViewSearch() {     //获取路由系统传入参数,路由系统传入一个且只传一个含有各种匹配参数数组

30120

如何在Ubuntu 14.04上使用Git Hooks部署Rails应用程序

您还需要一个在本地开发机器上git存储库中管理Rails应用程序。如果您没有并希望跟进,我们将提供一个简单示例应用程序。 让我们开始吧!...如果是这种情况,您可以跳过此小节,并在跟随时进行适当替换。如果没有,第一步是创建一个新Rails应用程序。 这些命令将在我们主目录中创建一个名为“appname”Rails应用程序。...随意替换“appname”为其他名字: cd ~ rails new appname 然后切换到应用程序目录: cd appname 对于我们示例应用程序,我们将生成一个脚手架控制器,以便我们应用程序可以显示...更新数据库配置 在您开发计算机上,如果您还没有,请更改到您应用程序目录。...fi done 请务必更新以下突出显示值: GIT_DIR:您之前创建裸git存储库目录 WORK_TREE:您要将应用程序部署到目录(这应该与您在Puma配置中指定位置匹配) APPNAME_DATABASE_USER

2.5K60

Node.js—Express使用、Express 路由 、Express 中间件、托管静态资源、使用 Express 写接口、node.js链接sqlite数据库

('Got a POST request') }) 理解路由匹配过程 每当一个请求到达服务器之后,需要先经过路由匹配,只有匹配成功之后,才会调用对应处理函数。...在匹配时,会按照路由顺序进行匹配,如果请求类型和请求URL同时匹配成功,则 Express 会将这次请求,转交给对应function函数进行处理。...它用法和应用级别中间件没有任何区别。...定义路由 app.get('/',(req,res) => { // 1.1 人为制造错误 throw new Error('服务器内部发生错误') }) // 2....// => 本来路由写在这里,现在模块化管理了,导入注册即可 // => 导入并注册路由模块,这样客户端到达请求就会到对应封装好接口中去匹配对应路由 const router = require

12410

聊聊近期公开几个GitLab高额奖金漏洞

def find_file(project, secret, file) uploader = FileUploader.new(project, secret: secret)...,比如文件上传下载,它定义一组路由用来拦截对GitLab rails应用程序访问, 也就是说,所有对 Rails 组件请求都得经过 Workhorse,但有时也可能被绕过。...最终允许用户指定allowd_paths中路径给rails组件处理,导致可以访问到以下路径范围内本地磁盘文件: def allowed_paths [...【漏洞修复】 如果gitlab把file.path参数放在post中应该也能防御,最后他们是添加对字段检查判断,必须是顶级参数,而不是foo[bar]这种嵌套方式。 ?...scope=wiki_blobs&search=page&ref=--output=/var/opt/gitlab/.ssh/authorized_keys' 3、使用创建ssh key登陆gitlab

4.5K30
领券