2017-01-05 2 views
0

연습용 레일 CRUD 애플리케이션을 만들고 있습니다. 내가 대체 할레일즈 link_to 컨트롤러 액션

<h1>New Event</h1> 
    <%= link_to “Back”,”/events” %><br><br> 
    <table border=”1”> 
    <tr> 
    <th>Event</th> 
    <th>Venue</th> 
    <th>Start Time</th> 
    <th>End Time</th> 
    <th>Description</th> 
    </tr> 
<%= form_for(@event) do |t| %> 
    <tr> 
    <td><%= t.text_field :event %></td> 
    <td><%= t.text_field :venue%></td> 
    <td><%= t.date_field :start_date%></td> 
    <td><%= t.date_field :end_date%></td> 
    <td><%= t.text_area :description%></td> 
    <td><%= f.submit “Create” %><br><br></td> 
</tr> 
</table> 

아래 new.html.erb에 대한 코드를 참조

get ‘/events’ => ‘events#index’ 
post ‘/events’ => ‘events#create’ 
get ‘/events/new’ => ‘events#new’, as: :’new_event’ 
get ‘/events/:id/edit’ => ‘events#edit’, as: :’edit_event’ 
get ‘/events/:id’ => ‘events#show’, as: :’event’ 
patch ‘/events/:id’ => ‘events#update’ 
put ‘/events/:id’ => ‘events#update’ 
delete ‘/events/:id’ => ‘events#destroy’ 

나의 새로운 이벤트 페이지는 현재 만들기 버튼을 사용 : 여기 내 routes.rb의 내용입니다 Create 링크가있는 Create 버튼은 new.html.erb의 나머지 코드를 그대로 유지하면서 사용합니다.

페이지의 텍스트 상자에서 수집 한 데이터를 제출하는 link_to를 만드는 방법을 알아낼 수 없습니다 . 나는 정적으로 아래의 코드를 사용하여 정보를 제출할 수 있어요 :

<%= link_to 'Create', events_path(:event => "Genesis", :venue => "Blossom", :start_date => "2017-01-01", :end_date => "2017-01-02", :description => "2017 Tour") :method => :post %> 
+0

내가 먼저 물어 봐도 될까요? HTML을 사용하여 양식을 제출하는 경우 아무나 버튼을 볼 것으로 예상됩니다. 또한 "resources : events"를 사용하지 않고 routes.rb 파일에서 경로를 분할하여 경로를 자동으로 생성하는 이유는 무엇입니까? –

+0

리소스 : 이벤트를 사용하여 모든 CRUD 경로를 생성 할 수 있다는 것을 알고 있습니다. 나는 학습 활동으로 그들이 어떻게 일했는지 이해할 수 있도록 수동으로 입력했습니다. – jbdkz

+0

다른 html.erb 페이지에서 다음과 같은 Delete link_to 코드를 사용하여 모든 CRUD 컨트롤을 일관되게 유지하고자했습니다. <% = link_to 'delete', event_path (t), method : : delete, data : {확인 : '확실합니까?'} %> – jbdkz

답변

0

당신은 jQuery로 그렇게 할 수 있습니다 : 당신이 링크 버튼이 아니라 필요 왜

$(document).on("click", "#your_link", function(){ 
    $("#form").submit(); 
}); 
관련 문제