मैं वर्तमान में खुद को कुछ आरओआर पढ़ रहा हूं और ट्यूटोरियल कर रहा हूं, लेकिन बूटस्ट्रैप के साथ कुछ अच्छे लेआउट और सामान जोड़ रहा हूं और मैं एक समस्या में भाग रहा हूं जो मैं नहीं कर सकता अंदाजा लगाओ।"शून्य के लिए अपरिभाषित विधि 'त्रुटियां: नील क्लास" त्रुटियों की विधि पर कॉल करते समय
मैं सत्यापन हिस्सा (http://guides.rubyonrails.org/getting_started.html#adding-some-validation) करने के लिए कोशिश कर रहा हूँ, लेकिन जब मैं का उपयोग करें:
undefined method `errors' for nil:NilClass
Extracted source (around line #9):
<legend><h1>Add Post</h1></legend>
<%= form_for :post, url: posts_path, html: {class: 'form-horizontal'} do |f| %>
<% if @post.errors.any? %>
<div id="errorExplanation">
कुछ भी नहीं काम करता है और मैं भी नकल की और भागों चिपकाया:
<% @post.errors.any? %>
मैं यह संदेश प्राप्त ट्यूटोरियल से।
<p> </p>
<div class="span6"
<fieldset>
<legend><h1>Add Post</h1></legend>
<%= form_for :post, url: posts_path, html: {class: 'form-horizontal'} do |f| %>
<% if @post.errors.any? %>
<div id="errorExplanation">
<h2><%= pluralize(@post.errors.count, "error") %> prohibited this post from being saved:</h2>
<ul>
<% @post.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="control-group">
<%= f.label :title, :class => 'control-label' %>
<div class="controls">
<%= f.text_field :title, :class => 'span4' %>
</div>
</div>
<div class="control-group">
<%= f.label :content, :class => 'control-label' %>
<div class="controls">
<%= f.text_area :content, :rows => '7', :class => 'input-block-level' %>
</div>
</div>
<div class="form-actions">
<%= f.submit "Add Post", :class => 'btn btn-success' %>
<%= link_to "Cancel", posts_path, :class => 'btn', :style => 'float:right;' %>
</div>
<% end %>
</fieldset>
</div>
और मेरे posts_controller:
class PostsController < ApplicationController
def new
end
def create
@post = Post.new(params[:post].permit(:title, :content))
if @post.save
redirect_to @post
else
render 'new'
end
end
def show
@post = Post.find(params[:id])
end
def index
@posts = Post.order("created_at desc")
end
private
def post_params
params.require(:post).permit(:title, :content)
end
end
मैं क्या याद आ रही है
यहाँ देखने के लिए कोड है? अग्रिम में धन्यवाद!
@Deefour हाय। मैं वही ट्यूटोरियल कर रहा हूं और '5.12 पोस्ट अपडेट कर रहा हूं 'में एक ही त्रुटि प्राप्त कर रहा हूं। '@ पोस्ट' चर को नई विधि में परिभाषित किया गया है और यह इस त्रुटि को फेंकता रहता है। क्या तुम मेरी मदद कर सकते हो? – Demnogonis
मुझे एक ही समस्या थी। यह वास्तव में भ्रमित है क्योंकि ट्यूटोरियल के ऊपरी भाग में स्पष्ट रूप से उल्लेख नहीं किया गया है कि किसी को नई कार्रवाई में लिखना चाहिए। –
DennyHiu