Есть ли у вашего сайта концепция списков разрешений / контроля доступа для самих категорий? Если бы у пользователя был доступ к другой категории, я бы сказал, что здесь нет проблем, поскольку ничто не мешает ему перейти в эту другую категорию и сделать то же самое.
Если ваши категории каким-либо образом ограничены, то я бы рекомендовал вложить ваше сообщение в категорию (маршруты вложенных ресурсов) и выполнить before_filter, чтобы обеспечить вам доступ к соответствующей категории.
config/routes.rb
resources :categories do
resources :posts
end
app/controllers/posts_controller
before_filter :ensure_category_access
def create
@post = @category.posts.new(params[:post])
...
end
private
def ensure_category_access
@category = Category.find(params[:category_id])
# do whatever you need to do. if you don't have to validate access, then I'm not sure I'd worry about this.
# If the user wants to change their category in their post instead of
# going to the other category and posting there, I don't think I see a concern?
end
URL будет выглядеть как
GET
/categories/1/posts/new
СООБЩЕНИЕ
/categories/1/posts