Activity
Hey Jerrica,
Looks like maybe you're just missing this line in your Gemfile:
gem 'bootsnap', require: false
Try adding that and running bundle
afterwards to install it.
It's basically just trying to load bootsnap but it can't find it. Bootsnap is a tool to make loading Rails faster. https://github.com/Shopify/bootsnap#how-does-this-work
You can definitely do it, but you wouldn't be able to use ActionMailbox for that. You'd want to use something like Twilio and setup a controller to receive the webhooks they send. I've been planning on doing some Twilio stuff, so I'll have to do that soon!
Did you yarn install
?
You can run bin/webpack
to run webpack and see what the compilation error was.
Posted in To use Rails 6 or Not
I would definitely use Rails 6. It's quite stable and since it mostly is adding some new features, you don't have much to worry about. Also all the gems I typically use are compatible with it so I haven't had much issue.
ActionText uses attachable_sgid
from the Attachable
concern. That's covered in the @mentions in ActionText video on how that works.
Posted in How do I get bin/rails app:template LOCATION=.. to actually work? (rails template with existing app)
And keep in mind, all this code is built on Thor. https://github.com/erikhuda/thor
Posted in How do I get bin/rails app:template LOCATION=.. to actually work? (rails template with existing app)
I don't know how you differentiate between the two, but this works for rails app:template
after_bundle do
p "hello"
end
run_bundle
run_after_bundle_callbacks
There's probably some way to check if it's a new app and only run the last two lines if needed. Maybe by looking up the current generator name or something. I'm not sure.
Posted in How do I get bin/rails app:template LOCATION=.. to actually work? (rails template with existing app)
Ah, finally found the code for the rails app:template
command: https://github.com/rails/rails/blob/9e34df00039d63b5672315419e76f06f80ef3dc4/railties/lib/rails/tasks/framework.rake
Posted in How do I get bin/rails app:template LOCATION=.. to actually work? (rails template with existing app)
A quick test applying an empty template to an existing app looks like it doesn't trigger bundle
install for these. Just new apps. That may be a difference between the two that isn't documented.
The code I did find was here: https://github.com/rails/rails/blob/470e6bdac97249ca3406c635f611aa8f7df8b222/railties/lib/rails/generators/rails/app/app_generator.rb
There's a run_bundle
mention in there which leads me to this:
https://github.com/rails/rails/blob/2e4c65e3afb18fc9a84d4d3ae893209efce27592/railties/lib/rails/generators/app_base.rb#L407
You can probably add run_bundle
to your template to make sure it runs it. I would assume this would also trigger after_bundle
code as well.
Unfortunately, ActiveStorage isn't currently flexible enough on the processing side of things.
You'll be better off using Shrine if you want to do any transcoding right now (unless you pay a service to do transcoding for you). I've used streamio-ffmpeg with Shrine to convert videos before.
https://gorails.com/episodes/shrine-background-and-video-transcoding
Posted in Bidding App
Hey Ryan,
I would probably create like a Bid model that kept track of these. Since you don't want to charge until the very end of the auction, you'll want to keep track of the bid history and then charge the winner (or runner up in case something falls through, etc).
Then you'd just add validations to check against previous bids for the product and make sure they're $25 more than the last.
Have any information on that? It looks like the Draggable docs (https://github.com/SortableJS/Sortable#event-object-demo, search for "onEnd") show the following object.
// Element dragging ended
onEnd: function (/**Event*/evt) {
var itemEl = evt.item; // dragged HTMLElement
evt.to; // target list
evt.from; // previous list
evt.oldIndex; // element's old index within old parent
evt.newIndex; // element's new index within new parent
evt.oldDraggableIndex; // element's old index within old parent, only counting draggable elements
evt.newDraggableIndex; // element's new index within new parent, only counting draggable elements
evt.clone // the clone element
evt.pullMode; // when item is in another sortable: `"clone"` if cloning, `true` if moving
},
It's been a while since I did this, so if this changed, then it may need a couple tweaks to match up, but at least here you have information on all the properties from the event.
The recommended place for stylesheets in Rails 6 is still the asset pipeline. Tailwind is a css framework generated by JS so it needs to be more tied to things than Bootstrap.
This is all just side effects of whats going on in modern frontend. Rails is just trying to make that easier, unfortunately it is pretty messy I think, but its also doing more complex things now.
Posted in How to Remove Unused CSS Classes from Tailwind CSS, Boostrap, and more with PurgeCSS Discussion
Yup, exactly that. Match haml files instead of erb.
Posted in How add PurgeCss with TailwindCss?
Hey Nikola,
I just posted an episode on this yesterday: https://gorails.com/episodes/purgecss
Yeah! Aren't they handy? It just makes your code so much more readable later on.
Also, another small pro-tip is you can do a scope with an argument like so:
scope :in_next_days, ->(amount) { where("cutdate BETWEEN ? AND ?", Date.current, amount.days.from_now) }
This would let you call Node.in_next_days(30)
and pass in the length of time if you wanted the next 7 days or something different.
Hey Matt,
You're almost right. You just need to find things between Date.current and 30.days.from_now so you don't query for the exact day 30 days out. That way you get everything between now and then.
@nodes.where('cutdate BETWEEN ? AND ?', Date.current, 30.days.from_now)
And you can make that a scope:
class Node < ApplicationRecord
scope :upcoming, ->{ where('cutdate BETWEEN ? AND ?', Date.current, 30.days.from_now) }
end
Posted in How do I add HTTParty to ActiveJob ?
Hey Arnas!
Anytime you see a ROLLBACK
in your logs, that means your validations failed.
In development, you print out what errors there are if it fails for debugging pretty easily.
If this is happening in production, you could change to find_or_create_by!
so it throws an exception instead instead of silently failing. Then at least you can debug it through your error tracking.
Posted in Setup Windows 10 Discussion
Hey Arnas,
Your Postgres server isn't running. I think most people have the best results installing Postgres on Windows and running it there, then having Rails from WSL connect to that.