I think you have a little more work to do. You should add to your model a many to many relationship between questions and users, in which you remember which user voted for which question and in which way(up or down). After that, when you render the question on the screen, you should select from that table the votes of the current user related to the question displayed.
When a user votes for a question you should add a record to the corresponding table.Also, when displaying the question, If the user has upvoted(downvoted), then you should style the upvote(downvote) link acoordingly. And if a user tries to vote again, you can check it before registering the vote in the database if the user already voted.
Maybe this is not the fastest way to do this kind of thing, but it gives you the most control (you can later display a detailed statistic about the voting style of a certain user, date and time at which the vote was casted, you can impose a limit to the number of votes a user can cast per day and so on...)