Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blueprint for has_one associations #96

Open
ramontayag opened this issue Aug 12, 2011 · 7 comments
Open

Blueprint for has_one associations #96

ramontayag opened this issue Aug 12, 2011 · 7 comments

Comments

@ramontayag
Copy link

I tried making a blueprint for a has one association (where User has_one Profile:

User.blueprint(:with_profile) do
  profile # I also tried profile(1)
end

Profile.blueprint do
  user
end

But they don't seem to work. I can't find any info regarding this either. Is this thing possible?

@chrismear
Copy link

In Machinist 1, only belongs_to associations can be filled in like this; for has_one/has_many associations, you need write a manual helper. See the section 'Other Associations' in the README: https://github.com/notahat/machinist/blob/1.0-maintenance/README.markdown

I believe the plan is for Machinist 2 to support has_one/has_many associations using this syntax.

@ramontayag
Copy link
Author

Sorry - I forgot to mention that I am using machinist 2.

@Antipattern
Copy link

Using 2.0.0.beta I have the same problem with belongs_to

using an explicit make! fixes the problem

So try:
Profile.blueprint do
user { User.make!}
end

@michaeleconomy
Copy link

Antipattern's solution works for us, but when not when using make from an association:

Like:

i = recipe.ingredients.make!

i.recipe_id will != recipe.id

(rails 3.1.3, machinist 2)

@pat
Copy link

pat commented Nov 30, 2011

To have makes via associations work, I usually write my blueprints like so:

Profile.blueprint do
  user { object.user || User.make! }
end

@michaeleconomy
Copy link

I tried that freelancing god, and it didn't work!

What ruby version and rails version are you using?

@pat
Copy link

pat commented Dec 11, 2011

Generally using MRI 1.9 and Rails 3.x - I've taken this approach in a few apps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants