On 17 February 2014 12:13, Nadia Vu <winter....@gmail.com> wrote: > Hi, thank you for that. > I have made that change. From > > belongs_to :tag > belongs_to :posts > > to > > belongs_to :tag > belongs_to :post > > > > However. I am still getting the same error. > Looking at many similar open stackoverflow answers and questions I honestly > thought the pluralization was going to fit it. But unfortunately it still > hasn't.
Are you still getting the error saying that there is no column post_id in the table taggings? I askied this in my first reply and you did not answer. If it is still saying that have you checked that there is such a column? Colin > > > > > On Mon, Feb 17, 2014 at 8:47 PM, Sridhar Vedula <sridhar.sidh...@gmail.com> > wrote: >> >> It is belongs_to :post ----------- not posts >> >> >> On Thursday, 13 February 2014 12:27:48 UTC+5:30, Nadia Vu wrote: >>> >>> Hi there, I'm very new to RoR please be kind. >>> >>> I wasn't sure where to go but I was hoping I could find help here after >>> days of hair pulling. Stackoverflow was not successful. >>> >>> I have followed the Official Beginners Guide to ROR and made a blog. >>> >>> I wanted to take it further and add a tagging system to the blog. Im >>> getting errors and I don't have enough knowledge of ruby to determine what >>> is causing them. Any thoughts/help would be really appreciated. >>> >>> So this is the error >>> >>> ActiveRecord::StatementInvalid in Posts#show >>> >>> Showing /home/nadia/blog/app/views/posts/show.html.erb where line #8 >>> raised: >>> >>> SQLite3::SQLException: no such column: taggings.post_id: SELECT "tags".* >>> FROM "tags" INNER JOIN "taggings" ON "tags"."id" = "taggings"."tag_id" WHERE >>> "taggings"."post_id" = ? >>> >>> Extracted source (around line #8): >>> >>> >>> >>> 6<p> >>> 7Tags: >>> 8<% @post.tags.each do |tag| %> >>> 9<%= link_to tag.name, tag_path(tag) %> >>> 10<% end %> >>> 11</p> >>> >>> >>> >>> >>> >>> >>> And this a small chunk of the >>> >>> post_controller: >>> >>> def new >>> 27 @post = Post.new >>> 28 end >>> 29 def create >>> 30 @post = Post.new(post_params) >>> 31 >>> 32 if @post.save >>> 33 redirect_to action: :show, id: @post.id >>> 34 else >>> 35 render 'new' >>> 36 end >>> 37 end >>> 38 >>> 39 def destroy >>> 40 @post = Post.find(params[:id]) >>> 41 @post.destroy >>> 42 >>> 43 redirect_to action: :index >>> 44 end >>> >>> This is my tag_controller >>> >>> 1 class TagsController < ApplicationController >>> 2 >>> 3 def show >>> 4 @tag = Tag.find(params[:id]) >>> 5 end >>> ~ >>> >>> my tag.rb >>> >>> 1 class Tag < ActiveRecord::Base >>> 2 has_many :taggings >>> 3 has_many :posts, through: :taggings >>> 4 >>> 5 end >>> >>> post.rb >>> >>> 1 class Post < ActiveRecord::Base >>> 2 >>> 3 has_many :comments, dependent: :destroy >>> 4 has_many :taggings >>> 5 has_many :tags, through: :taggings >>> 6 validates :title, >>> 7 presence: true, >>> 8 length: { minimum: 5 } >>> 9 >>> 10 def tag_list >>> 11 self.tags.collect do |tag| >>> 12 tag.name >>> 13 end.join(", ") >>> 14 end >>> 15 def tag_list=(tags_string) >>> 16 tag_names = tags_string.split(",").collect{|s| >>> s.strip.downcase}.uniq >>> 17 new_or_found_tags = tag_names.collect { |name| >>> Tag.find_or_create_by(name: name) } >>> 18 self.tags = new_or_found_tags >>> 19 end >>> 20 end >>> ~ >>> >>> and my posts_helper >>> >>> 1 module PostsHelper >>> 2 def post_params >>> 3 params.require(:post).permit(:title, :body, :tag_list) >>> 4 end >>> 5 end >>> >>> Please let me know if I can add any more code that you would need to see >>> >>> Please please help. I really need to get out of this little rut. And any >>> comments would be appreciated. >>> >>> >> >> -- >> You received this message because you are subscribed to a topic in the >> Google Groups "Ruby on Rails: Talk" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/rubyonrails-talk/GQwj6Mrx2CE/unsubscribe. >> To unsubscribe from this group and all its topics, send an email to >> rubyonrails-talk+unsubscr...@googlegroups.com. >> >> To post to this group, send email to rubyonrails-talk@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/rubyonrails-talk/ab6b8df7-5eed-423a-aab1-42468426e532%40googlegroups.com. >> >> For more options, visit https://groups.google.com/groups/opt_out. > > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to rubyonrails-talk+unsubscr...@googlegroups.com. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/rubyonrails-talk/CAOWWFs0ZRabxQYrNJYMS8Gmh8D%3Dwt4HXV5MhSZkkoruCESdmKQ%40mail.gmail.com. > > For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-talk@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/CAL%3D0gLs75DrAopUKSa%2BvP1GBvCz3gJwyLFLL52fJ6LXOAf6gxA%40mail.gmail.com. For more options, visit https://groups.google.com/groups/opt_out.