2014-05-12 3 views
0

보기/homework.html.erb

다른보기에서

보기/static_pages/home.html.erb

<span class="user"> 
     <%= link_to feed_item.user.name, feed_item.user %> 
    </span> 
    <span class="content"> 
     <%= feed_item.content %> 
    </span> 
    <span class="timestamp"> 
     <--Here I want put a link "attachment" from view/homework.html.erb --> 
     Posted <%= time_ago_in_words(homework.created_at) %> ago. 
    </span> 

컨트롤러/static_pages_controller

<span class="content"> 
<%= homework.content %></span> 
<span class="timestamp"> 
#this link I want to put it to home page 
<%=link_to "attachment", homework.attachment_url if homework.attachment?%> 
Posted <%= time_ago_in_words(homework.created_at) %> ago. 
을 내 첨부 파일 링크를 넣어하는 방법 .rb
class StaticPagesController < ApplicationController 
    def home 
     if signed_in? 
     @homework = current_user.homeworks.build 
     @feed_items = current_user.feed.paginate(page: params[:page]) 
     end 
    end 

contro llers/homeworks_controller.rb

before_action :signed_in_user, only: [:create, :destroy] 
    before_action :correct_user, only: :destroy 

    def create 
    @homework = current_user.homeworks.build(homework_params) 
    if @homework.save 
     flash[:success] = "Homework created!" 
     redirect_to root_url 
    else 
     @feed_items = [] 
    render 'static_pages/home' 
    end 
    end 
    def destroy 
    @homework.destroy 
    redirect_to root_url 
    end 

    def index 
    @homeworks=Homework.all 
    end 

    private 

    def homework_params 
    params.require(:homework).permit(:content,:attachment) 
    end 
    def correct_user 
    @homework = current_user.homeworks.find_by(id: params[:id]) 
    redirect_to root_url if @homework.nil? 
    end 
    end 

컨트롤러에서 해당 메서드를 정의하는 방법은 무엇입니까? 즉 모든

답변

0

사용자가 응용 프로그램에서 제공하는 것만 큼 알면 사용자에게 몇 가지 숙제 항목이 있다고 생각됩니다. 따라서 수행 할 수있는 작업은

입니다. 또는 모든 숙제를 반복하고 목록의 각 첨부 파일에 연결하십시오.

0
<--Here I want put a link "attachment" from view/homework.html.erb --> 

당신은

레일이 MVC programming pattern에 내장되어

잘못된 방법으로 그것에 대해 생각하고 난 그냥 실행 마이그레이션 AddAttachmentToHomeworks, 모든 view 자율 - 그것은 어떤 데이터를 보유하지 않습니다 의미 그 자체의; 그것은 controllers


컨트롤러

다른보기에서 attachment을 포함하여 귀하의 질문은, 컨트롤러에서 시작에서 데이터를 상속한다. 당신이 view/static_pages/home.html.erb을 렌더링 할 때

, 실제로 static_pages 컨트롤러

에서 home 조치를 당신이 당신의 다른보기에서 homework 첨부 파일을 렌더링 할 때 의미 렌더링하고, 당신은 home 컨트롤러 액션에 동일한 데이터를 호출 할 필요가 like :

#app/controllers/static_pages.rb 
class StaticPagesController < ApplicationController 
    def home 
     homework = Homework.find "4" 
    end 
end 
관련 문제