utils "Unknown column 'user_id' error in django view
unknown column in field list django mysql (4)
I'm having an error where I am not sure what caused it.
Here is the error:
Exception Type: OperationalError Exception Value: (1054, "Unknown column 'user_id' in 'field list'")
Does anyone know why I am getting this error? I can't figure it out. Everything seems to be fine.
My view code is below:
if "login" in request.session: t = request.POST.get('title', '') d = request.POST.get('description', '') fid = request.session["login"] fuser = User.objects.get(id=fid) i = Idea(user=fuser, title=t, description=d, num_votes=1) i.save() return HttpResponse("true", mimetype="text/plain") else: return HttpResponse("false", mimetype="text/plain")
I appreciate any help! Thanks!
Edit: Also a side question. Do I use objects.get(id= or objects.get(pk= ? If I use a primary key, do I need to declare an id field or an index in the model?
Edit: Here are the relevant models:
class User (models.Model): first_name = models.CharField(max_length=200) last_name = models.CharField(max_length=200) email = models.CharField(max_length=200) password = models.CharField(max_length=200) class Idea (models.Model): user = models.ForeignKey(User) title = models.CharField(max_length=200) description = models.CharField(max_length=255) num_votes = models.IntegerField()
user_idfield is the FK reference from
User. It looks like you've changed your model, and not updated your database, then you'll have this kind of problem.
Drop the old table, rerun syncdb.
Your model tables get an
idfield by default. You can call it
idin your queries. You can also use the synonym of
If you define your own primary key field you, you don't get the automatic
idfield. But you can still use
pkto refer to the Primary Key.
Yes, I dropped the tables and it all worked great. However, you have to actually go into the database and DROP them. "manage.py flush" or "manage.py reset appname" won't do it by themselves.
Can't save django object to mysql (ManyToManyField)
Have you tried saving the art and eusr items first -- ie:
Before calling cl.save()
You'll have to show your models to get real help, but it looks like your Idea table doesn't have a user_id column? Did you modify the SQL table structure?