Это делает так, чтобы при выполнении объединений предложения where совпали со столбцами правильных таблиц. Это удобно в большинстве случаев, но в вашем конкретном случае возникают проблемы.
То, что вы могли бы сделать, это использовать синтаксис других условий, который не будет добавлять имена таблиц rails к атрибутам, но все же будет корректно очищать входные данные.
Api.find :all, :from => params[:table_name], :conditions => ['name = ?','deep']