2013-12-20 2 views
0

그래서 Basecamp HQ (classic) API와 Ruby Wrapper을 사용하여 Rails 애플리케이션을 설정하여 To Do 아이템, 중요 시점 및 메시지를 대량 추가하고 삭제합니다.Basecamp HQ Rails 데이터베이스없이 통합

지금은 두 개의 컨트롤러가 있습니다. 프로젝트와 projectSummary (프로젝트 has_many projectsummaries 및 projectsummary belongs_to 프로젝트) 프로젝트 ID를 선택하면 레일스가 보여주는 페이지로 이동합니다. 해야 할 일, 마일스톤 및 메시지

프로젝트 페이지는 정상적으로 작동합니다. 프로젝트에 대해로드하고 싶은 모든 정보는 아름답게 요약되어 있지만 다른 페이지로 연결하려고하면 진행에 실패했습니다. 내 레이크 노선이

컨트롤러 코드 현재

class ProjectsController < ApplicationController 
    before_action :set_project, only: [:show, :edit, :update, :destroy] 
    before_filter :basecamp_connect 
    helper_method :sort_column, :sort_direction 

    def index 
    @project = Basecamp::Project.find(:all) 
    end 


    def list 
    @projects = @basecamp.projects.find(:all) 
    end 

    def show 
    end 

을 반환하더라도

내가지고있어 오류가

undefined method `id' 

이다, 이것은 내가 연결하려고 내 index.html.erb 코드 프로젝트 요약을 표시하는 페이지로 이동합니다.

<% @project.each do |item| %> 
    <tr> 
    <td><%= item.name %></td> 
    <td><%= link_to item.id, project_projectsummary_path(:project_id => @project.id, :id => @project.projectsummary.id) %></td> 
    <td><%= item.last_changed_on %></td> 
    <td><%= item.created_on %></td> 
    <td><%= item.status %></td> 

내가이 작업을 수행하기 위해 할 수있는 아이디어가 있습니까?

감사합니다.

답변

0

item을 의미 할 때 @project으로 전화하는 것처럼 보입니다.

이 선해야 :

<td><%= link_to item.id, project_projectsummary_path(:project_id => @project.id, :id => @project.projectsummary.id) %></td> 

가 될 :

<td><%= link_to item.id, project_projectsummary_path(:project_id => item.id, :id => item.projectsummary.id) %></td> 
+0

이 문제의 @의 user2506667가 해결 되었습니까? – benjaminjosephw