Chris Oliver

Joined

292,750 Experience
93 Lessons Completed
295 Questions Solved

Activity

Posted in Using Vagrant for Rails Development Discussion

That's a good question. I think it downloads the primary image once and clones it for each project. You should be able to run "ls -la" to determine the directory size and see just how much it's taking up. I'd guess it's a couple GB for each project.

For personal projects, Vagrant isn't really necessary so I wouldn't really say you need it for that. Mostly just like team environments like you mentioned.

I'd guess there is a way of sharing the Vagrant VM, but I'm not sure off the top of my head.

Posted in Using Vagrant for Rails Development Discussion

The goal is really to use a separate Vagrant box for each project. The reason for that is that each time you can be sure you have everything separated out nicely and you can trust that you don't have some accidental dependencies you forgot about it or weren't aware of.

Posted in Setup MacOS 10.9 Mavericks Discussion

SSH does get pretty cumbersome when you've got a bunch of different keys. Here's some ideas on how to make it better: http://stackoverflow.com/qu...

Posted in Forum Series Part 4: div_for Discussion

Oh sweet. I remember seeing dom_id before but absolutely forgot about it!

Posted in Setup Ubuntu 14.04 Trusty Tahr Discussion

That's what will happen if you missed the echo lines to write that code into your ~/.bashrc file. Without those lines, it won't load your ruby environment so they're important!

Posted in Pundit Scope and has_many through

I think that's because on the index you want an array of records, but on show you just want a single record.

When you pass in the array into policy_scope, it's going to call the .where(company_id: X) method on it. This works when you return Item.all but when you pass in just an Item record, that does not have a where method because it's a single instance of the Item class.

In your show action, you can change it to:

def show
    @item = Item.find(params[:id])
    authorize @item
end

And this will load the record and Pundit will know to authorize it against the right method in the policy without hitting the Scope.

I'm using pygments.rb inside of Github's html-pipeline with a handful of other gems to improve the Markdown parsing:

gem "html-pipeline", "~> 1.9.0"
gem "rinku", "~> 1.7.3"
gem 'github-linguist', '~> 3.1.2'
gem "github-markdown", "~> 0.6.4"
gem 'pygments.rb', '~> 0.6.0'

Posted in Using Vagrant for Rails Development Discussion

Awesome find! Thanks for sharing this.

Updated. It got eaten in my markdown parser I believe. :)

This looks awesome. I'd love to see this stuff standardized and included in Rails core. Is the plan for this shipping with Rails 5?

Posted in Pretty urls with FriendlyID Discussion

Glad to help and thanks for the kind words. :-)

Posted in Pretty urls with FriendlyID Discussion

So on GoRails, I do this inside my episodes/show.html.erb:

<script>
wistiaEmbed = Wistia.embed("<%= @episode.video_identifier %>")
</script>

Posted in Using Pundit to build in a cool gmail-feature

Yeah if you need multiple levels of access more than global and individual then you will need another tier. You can put the access level on the items and the users or you can put them in a join table.

Posted in Using Pundit to build in a cool gmail-feature

You want a has_one :company, through: :product on the Option to make that work. belongs_to is only used when you have an _id column on the model.

If you're scoping activity to things which a user owns, you'll need to store the user_id on the records anyways otherwise how can you know who created it? Because of that, it seems that identities overcomplicate things a bit and you'll end up with an unclear mess of things (and likely open yourself up for a lot of security holes). If you simply add a user_id on everything, you can know if the current user can manage that item or not. If you add a role to the User model, you can give them higher levels of access that can skip the lower user_id checks to allow them company level access instead.

Posted in Bundle issues

Ha! That will do it. :)

Posted in Pretty urls with FriendlyID Discussion

I'd suggest using a string column for those since they aren't simple integers.

Posted in Pretty urls with FriendlyID Discussion

Your database will be the one handling those writes and generating the IDs. In most cases like that, you don't need to worry about that but consistency can become a problem when your set up gets a lot larger.

Posted in Sending emails with Mandrill Discussion

Basically, you need to run a mail server somewhere in either case. Mandrill serves as that whether you just use it for SMTP or you hit their API instead to send the emails without using SMTP.

Posted in Setup MacOS 10.9 Mavericks Discussion

Your problem is:

/usr/local/include is not writable.

I think that should be owned by your user. Mine is

drwxr-xr-x  232 chris  admin   7888 Sep 26 14:24 include

I imagine fixing permissions and reinstalling mysql will do the trick.

Posted in Setup Ubuntu 14.04 Trusty Tahr Discussion

Ah yep! Pretty much anytime someone (like myself) mentions a file without giving a full path, they mean inside your Rails app's directory like that.