Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在Rails的子记录中安装外键时出现问题_Ruby On Rails_Foreign Keys - Fatal编程技术网

Ruby on rails 在Rails的子记录中安装外键时出现问题

Ruby on rails 在Rails的子记录中安装外键时出现问题,ruby-on-rails,foreign-keys,Ruby On Rails,Foreign Keys,问题是,在我更改了INDI(代表个人或“联系人”)的路由生成方式后,Rails无法找到新路由 在我的路由文件中作为此语句的结果 资源:配置文件 资源:印度科学院 结束 这些路线包括: 个人资料 GET /profiles/:profile_id/indis(.:format) indis#index POST /profiles/:profile_id/indis(.:format) indis#create 简介是指公司,INDI是

问题是,在我更改了INDI(代表个人或“联系人”)的路由生成方式后,Rails无法找到新路由

在我的路由文件中作为此语句的结果

资源:配置文件 资源:印度科学院 结束

这些路线包括:

个人资料

          GET    /profiles/:profile_id/indis(.:format)   indis#index

          POST   /profiles/:profile_id/indis(.:format)   indis#create
简介是指公司,INDI是指在公司工作的个人

所以我坐在这里看这个新联系人的new.html.erb

  <h1>New Contact</h1>

  <%= render 'form', indi: @indi %>
  <%= link_to 'Back', :back %>
新联系人
为了避免rails路由器使用基本的创建路由,我在路由的顶部有下面一行代码。 资源:incd,:except=>[:create] 沿途

我明白了 没有路线匹配[POST]“/INDI”

提示:我添加了:except代码,因为在我进行更改后旧路由无效 资源:配置文件 资源:印度科学院 结束

现在,当我点击create时,它找不到路线,我也不知道是什么代码 产生


不知何故,我需要修正新的联系人代码,这样当他们点击时,就可以创建到新路线而不是旧路线的路线(但我无法访问新联系人代码中引用的表单的代码。

所有这一切的结果是,我无法访问INDI控制器中的外键,因为创建新记录不知道如何将所有参数传递给控制器,特别是它不传递外键。开始考虑渲染“表单”是指o部分。我是rails新手。下面是_form.html.erb顶部的外观,但现在indi依赖于父级,我认为此代码不知道父级键,因此无法t传入外键。我认为发生的事情是,在运行scaffold之后,我更改了模型以添加外键,但我从未更新视图,因此视图不包含新的外键字段params[:profile_id]}%>解决了问题。我去掉了部分,以便更好地理解我必须做的事情。