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.




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.

Reply via email to