Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 我想在一个视图中显示两个表中的数据_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 我想在一个视图中显示两个表中的数据

Ruby on rails 我想在一个视图中显示两个表中的数据,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我有两个表:一个名为um\u org\u data,另一个名为addresses 问题是我想用地址显示um\u org\u data中的数据,其中addresses有一个外键um\u org\u datum\u id 下面是我的视图代码,我想在其中同时显示两个表中的数据: <p id="notice"><%= notice %></p> <div class="container"> <div class="row">

我有两个表:一个名为
um\u org\u data
,另一个名为
addresses

问题是我想用
地址
显示
um\u org\u data
中的数据,其中
addresses
有一个外键
um\u org\u datum\u id

下面是我的视图代码,我想在其中同时显示两个表中的数据:

<p id="notice"><%= notice %></p>


<div class="container">
  <div class="row">
      <div class="span3 pull-right">
        <div class="well">
          <h2>Heading</h2>
          <p>Sample text</p>
        </div> 
      </div> 

    <div class="span9">
    <h2>Organization Details</h2>

    <table class="table table-hover">
      <tr>
        <th col span="1" style="width: 200px">
            </i>&nbsp;&nbsp;&nbsp;Organization Name:
        </th>
        <td><%= @um_org_datum.org_name %></td>
      </tr>
      <tr>
        <th col span="1" style="width: 250px">
            </i>&nbsp;&nbsp;&nbsp;Organization Description:
        </th>
        <td><%= @um_org_datum.org_description %></td>
      </tr>
      <tr>
        <th col span="1" style="width: 250px">
          </i>&nbsp;&nbsp;&nbsp;Web Domain:
        </th>
        <td><%= @um_org_datum.webdomain %></td>
      </tr>
      <tr>
        <th col span="1" style="width: 200px">
          <%= fields_for :address_attributes do |p| %>
            <%= p.label 'Office Address' %><br />              
        </th>
        <td><%= p.address.offc_addr %></td>
        <% end %>
      </tr>
      <tr>
        <th col span="1" style="width: 200px">
            </i>&nbsp;&nbsp;Office Phone Number:
        </th>
        <td><%= @um_org_datum.offc_ph %></td>
      </tr>
    </table>

    <div class="control-group">
      <div class="controls">       
       <a class="btn" href="/um_org_data" style="text-color:black">View all</a>


       </div>
    </div>
</div>
</div>
</div>

标题 示例文本

组织详情 机构名称: 组织机构说明: Web域:
办公室电话:
我不在控制器中使用任何连接查询,因为我不知道如何使用连接查询。如果这个问题需要一个连接查询,请告诉我什么是语法,以及我必须在视图表单中更改什么来显示这两个表的属性

表名:
um\u组织数据
,属性:
id,组织环境名称,组织描述,webdomain

表名:
adress
,属性:
id,offc\u addr,um\u org\u datum\u id


提前谢谢

你有1:n关联吗?我说得对吗

一定要删除…的字段。\u,因为您不在表单中

更改此项:

  <tr>
    <th col span="1" style="width: 200px">
      <%= fields_for :address_attributes do |p| %>
        <%= p.label 'Office Address' %><br />              
    </th>
    <td><%= p.address.offc_addr %></td>
    <% end %>
  </tr>


为此:

  <tr>
    <th col span="1" style="width: 200px">Office Address</th>
    <%= @um_org_datum.addresses.each do |p| %>
     <td><%= p.office_addr %></td>
    <% end %>
  </tr>

办公地址

查看标记,但逻辑现在应该清楚了。

我假设您的模型中有以下内容

组织基准

has_many :addresses
地址

belongs_to :um_org_datum
这行吗

  <tr>
    <th col span="1" style="width: 200px">Office Address</th>
    <%= @um_org_datum.addresses.each do |p| %>
     <td><%= p.offc_addr %></td>
    <% end %>
  </tr>

办公地址

您是否在各自的模型文件中设置了关联?是的,我已经这样做了。。。当我使用创建一个新数据并提交它时,它将从一个视图中分别存储在两个表中。。。但是,我不知道如何在一个视图中显示它们。根据您的解释,看起来您的组织有多个地址。基本上是1:M,有组织和地址。这是正确的吗?是的,这是正确的@dewdropsIs@Mattherick的答案对你有用?代码中有错误:(
未定义的局部变量或方法
每个“for”提取的源(在第37行附近):34:35:36:Office Address 37:38:39:40:`我问可能会有连接查询…因为我不使用任何连接查询,所以如果你能告诉我语法,我非常感谢你!noops出错了…因为我在上面的答案中发布了详细信息!你可以检查那里如果您可以尝试@um_org_datum.addresses.each,地址和地址之间有点