Open raphaelcm opened 7 years ago
It sounds like the path is wrong, it should include the company in there, shouldn't it? How is that user_achievements_path
generated? AFAIK that's not something that comes from mongoid-slug.
no, the path is not the issue. These are all working paths - the only change is the addition of mongoid-slug.
The question is, is there a setting or change we can make to force the url/path generators to use the ID of an object, rather than the slug?
I honestly don't know, I'll leave this open maybe you can dig this up?
Overriding User#to_param
to return id
will result in the default url generation being fixed. mongoid-slug
overrides it to return the slug here: https://github.com/mongoid/mongoid-slug/blob/master/lib/mongoid/slug.rb#L281
Apologies for posting a question here, but I searched for a long time and couldn't find the answer.
I'm creating a slug on
User
that is scoped toCompany
. Everything works well, except generating paths/urls.user_achievements_path(@user)
generates/users/robert/achievements
, but there are multiple roberts who belong to different companies, so the achievement action retrieves the wrong robert when it does a standard lookup ofUser.find(params[:id])
.Changing
@user
to@user.id
works, but I'd rather not have to do that all over the place. Is there a more elegant solution?Thank you.