Ruby on Rails Monday, February 4, 2019

I have seen this GEM before, but I wouldn't recommend it, because it doesn't use ActiveRecord Relation, which means that it probably doesn't work with "preload".

I'm planning to add this feature to my own PostgreSQL GEM this month, so if you are still interested in this feature, keep track of the new version here:

https://github.com/crashtech/torque-postgresql

On Monday, February 4, 2019 at 1:08:48 PM UTC-2, Eric Anderson wrote:
I don't think this is supported out-of-the-box in Rails but I did see this extension a while back that appears to add what you are looking for:


Haven't personally used it but looks promising.

Eric

On Wednesday, April 11, 2018 at 7:51:00 AM UTC-4, Carlos Ferreira da Silva wrote:
I'm trying to use an array column to crete an association between 2 models. I remember that in the past this was working, but I think something has changed and now it's not working anymore. Here is the deal:

Ruby 2.4.3p205 (2017-12-14 revision 61247) [x86_64-linux]
Rails 5.1.5

app/models/user.rb
# Having the columns id, name, email
class User < ApplicationRecord
end

app/models/group.rb
# Having the columns id, name, user_ids[]
class Group < ApplicationRecord
  has_many
:users, primary_key: :user_ids, foreign_key: :id
end

And the oddest thing about this is that the following works fine:
Group.first.users

It gives me the list of the users with the ids filled on that field, but the following doesn't work:
Group.first.users.load

It gives me an empty list. And, since the load method doesn't work, I cannot do any operation like #each or #to_a.
The first command don't replace the original value by a Replaceable, the second does. Maybe we just need a ReplaceableArray or something like that, or I'm missing something here.

Can anyone help me with that?

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/ec9172f6-929a-4f13-9a2a-0837bde27fbe%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment