2014-01-26 4 views
0

그래서이 문제에 머리를 쓰고 있습니다. 추천 데이터베이스 열에 Time.now를 보내는 체크 박스가 필요합니다.폼에 확인란이있는 매개 변수를 전달합니다.

나는 check_box_tag를 사용 PARAMS 전달하는 방법을 알고 그는 아래와 통과 할 것 같다

Parameters: {"utf8"=>"✓", "authenticity_token"=>"24aw2xi68XsgMrU28is3wcXkNdhLlgVHhZBuJdd9984=", "article"=>{"body"=>"oops", "published"=>"0", "headline"=>"headlinez", "input_slug"=>"weee", "article_position"=>"5", "issue_id"=>"1", "section_id"=>"1", "author_id"=>"", "flag"=>"0"}, "commit"=>"Save Article", "featured"=>"2014-01-25 19:28:57 -0800", "id"=>"weee"} 

하지만 어떻게 내가 그 기사 내에서 전달받을 수 있나요? check_box_tag는 양식에 의해 좋아 보이지 않는 것처럼 보이므로 어떻게해야합니까? 이후이 답변에 더 추가 -

<div class="field"> 
     <label>Featured Article?</label> 
     <%= check_box_tag :featured, @time %> 
     </div> 

답변

1

문서 해시 내에 있도록 매개 변수를 이동하려면,이

<%= check_box_tag 'article[featured]', @time %> 

EDIT 같은 check_box_tag 뭔가 이름을 지정할 수 있습니다 : 여기

은 내 양식입니다 당신은 form_for를 사용하고 있습니다

당신은 @article과 '특색 지어진'방법을 가지고 있기 때문에 이런 종류의 일을 할 수 있습니다 ...

(210)
<%= f.check_box :featured, {}, Time.now %> # As you wrote in your answer 

그러나, 당신은 또한 좀 더 레일 표준 인이 작업을 수행 할 수 있습니다 ...

변경 '기능'featured_at 수 (이것은 날짜를 나타내는의 이상의 표준 방법입니다), 그리고 추가 기사에 '추천'attr_access

class Article < ActiveRecord::Base 

attr_accessor :featured 

def featured 
    !!featured_at 
end 

def featured=(value) 
    if featured_at.present? && value.blank? 
    self.featured_at = nil 
    elsif featured_at.blank? && value.present? 
    self.featured_at = Time.now 
    end 
end 

그리고, 당신은 대신 날짜의, featured의 양식을 통해 부울을 제출할 수 있습니다.

= f.check_box :featured, {}, 'true', '' 

이렇게하면 해킹이 발생하지 않습니다. 여기는 중요하지 않을 수도 있습니다. 단지 좋은 습관입니다.

+0

아 할 마지막 수 있었다, 내가보고, 내가 그와 유사한 여러 가지 방법을 시도했지만 그게 내가 감사 필요한 구문입니다! –

0

나는이 다음과 같은 방법을

<%= f.check_box :featured, {}, Time.now %> 
관련 문제