brianp
(brianp)
January 27, 2010, 9:28am
1
Hey,
If i have a function in my model:
def mark_sold
self.update_attribute(:market_status, 'sold')
end
Is it possible for this to be called via an on page link?
Then I'd like to ajax it so a user could just scroll down a list
clicking all links to "mark as sold" as he comes across old inventory.
Thanks,
brianp
Jeffrey
(Jeffrey)
January 27, 2010, 10:10am
2
Quoting brianp <brian.o.pearce@gmail.com>:
Hey,
If i have a function in my model:
def mark_sold
self.update_attribute(:market_status, 'sold')
end
Is it possible for this to be called via an on page link?
Then I'd like to ajax it so a user could just scroll down a list
clicking all links to "mark as sold" as he comes across old inventory.
Browser requests always are to controller methods. Any other way you are
fighting Rails' MVC opinioned structure.
Add a method to a controller and the route to config/routes.rb:
def mark_sold
model = Model.find(params[:id])
model.mark_sold
render :partial => ..., :object => model
end
The render should generate the HTML for the changed model instance that the
AJAX will replace.
HTH,
Jeffrey
brianp
(brianp)
January 27, 2010, 10:15am
3
Thanks Jeffrey,
I had a good feeling this is how it needed to be done. But felt like I
was bloating my controller. Now I'm happy knowing I was originally
going in the right direction.
Thanks again.
brianp