Question: How to conditionally override `resource_type`?
@const-cloudinary is already working on this.
Since Mar 23, 2021.
Assessment
This issue has not been assessed yet.
Description
Is it possible to conditionally set resource_type to "raw" based on attributes of the model instance?
The issue I'm facing is that I have users who want to upload password-protected PDFs. These get rejected by Cloudinary with an error.
In order to upload these, it seems like I need to set the resource_type to "raw", overriding the auto-identified file type (pdf):
- https://support.cloudinary.com/hc/en-us/community/posts/360007080219-Encrypted-PDF-file-upload-error
- https://github.com/cloudinary/cloudinary_gem/issues/85
- https://github.com/cloudinary/cloudinary_gem/issues/17#issuecomment-17277801
The only way I've found so far to do that is with a transformation in the uploader class:
process cloudinary_transformation resource_type: "raw"
...which works, but applies to all files uploaded with this uploader, since process is a class method (?).
Is it possible to set resource_type dynamically for each uploaded file? Or is the approach to have two different uploaders: one which obeys the MIME type (?) and another which always uses "raw"?
If the approach is multiple uploads, is it possible to switch those based on data in the model, or is there always just one uploader per model? I guess that's maybe a question for the CarrierWave project.
Many thanks for your patience 🙏 - I'm inheriting a legacy project which is using this gem and I'm only just getting to grips with how it works 😅
- Dominant language
- Ruby
- Stars
- 420
- Forks
- 282
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from cloudinary/cloudinary_gem
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
cloudinary/cloudinary_gem#597 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 52/100
cloudinary/cloudinary_gem#591 · 3 comments ·
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
cloudinary/cloudinary_gem#582 · 1 comment ·
-
404's when fetching .eml files (from Action Mailbox)May be free again @rnamba-cloudinary claimed this 400 days ago, and no pull request is open. Open
Difficulty 4/5 3-5 days Newbie friendliness 30/100
cloudinary/cloudinary_gem#581 · 1 comment ·
-
BlobKey, MirrorService and Sidekiq 8 are incompatibleMay be free again @const-cloudinary claimed this 541 days ago, and no pull request is open. Open
cloudinary/cloudinary_gem#573 · 3 comments · 1 assignee ·
All issues in cloudinary/cloudinary_gem
Similar issues
-
releases.rb silent failure cascades into NoMethodError crashes in downstream extensionsPossibly taken @Rucha0901 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
jenkins-infra/jenkins.io#9598 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 88/100
yegor256/mailanes#361 · 1 comment ·
Maintainers usually reply within 1 day
-
Property accounts have no notes fieldPossibly taken @arnaurodondev claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
we-promise/sure#5057 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
metacall/core#964 · 1 comment ·
Maintainers usually reply within 1 day
-
Mend: dependency security vulnerability
Difficulty 1/5 Under an hour Newbie friendliness 80/100