나는 Rails 초보자입니다. 나는 couchrest-rails 앱을 작성 중이므로이 모델에 activerecord를 사용하지 않습니다. 방금 그 뜻을 알게되었습니다.레일즈 form_tag 양식 작성 - 비 액티브 레코드 모델
form_for(@model)
이 작동하지 않습니다. form_tag를 사용하는 방법을 알아 내려고 노력하고 있습니다. 그러나 대부분의 예제에서는 새로운 & 작업을 포함하지 않습니다.
이것은 잘못된 것입니다 :
Scenario: Create Valid Article # features/article.feature:16
Given I have no articles # features/step_definitions /article_steps.rb:8
And I am on the list of articles # features/step_definitions/webrat_steps.rb:6
/home/deploy/www/www.trackingplace.com/app/ccc/app/views/articles/new.html.erb:3: warning: multiple values for a block parameter (0 for 1)
from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/helpers/capture_helper.rb:36
When I follow "New Article" # features/step_definitions/webrat_steps.rb:18
You have a nil object when you didn't expect it!
The error occurred while evaluating nil.error_messages (ActionView::TemplateError)
features/article.feature:19:in `When I follow "New Article"'
하지만 오류를 이해하지 못하는, 또는 어떻게 그것을 해결하기 위해 :
<h1>New article</h1>
<% form_tag new_article_url(@article), :method => :post do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :title %><br />
<%= f.text_field :title %>
</p>
<p>
<%= f.submit 'Create' %>
</p>
<% end %>
<%= link_to 'Back', articles_path %>
내 오이 시나리오를 실행할 때, 나는이를 얻을 수 있기 때문에.
감사합니다. Ryan. 내 모델에 form_for에 대한 지원을 추가하기로 결정한 경우 필요한 전체 메소드 세트를 확인하는 방법에 대한 제안 사항은 무엇입니까? –
필자는 레일스 2에서 필요한 메소드의 "완전한"세트를 결정하는 방법을 모른다. 몇 가지 검사를하고 method_missing 오류가 발생하지 않는다면 아마 좋습니다. Rails 3에서는이를 수행하는 문서화 된 방법을 소개하고 모델에서 정의 할 수있는 인터페이스를 제공합니다. – ryanb
Ok - 양식 값에 액세스하는 방법을 이해하기가 너무 힘듭니다! 내 컨트롤러에 : def create @article = Article.new (: title => params [: article]) 하지만 작동하지 않습니다. 클래스를 초기화하기 위해 내부적으로 사용하려고하면 다음을 얻습니다. "features"/ steps_definitions/webrat_steps.rb : 14 { "title"=> "Spuds"에 대해 정의되지 않은 메소드'downcase ' } : HashWithIndifferentAccess (NoMethodError) 단서가 있습니까? –