Search

Ideas that are…

Search Ideas


2355 ideas match your query.:

Hiccdown methods should live in their own, separate modules. How about they are called ‘displays’?

ruby
module ProductsDisplay
def self.index vc, # …
vc.some_helper_method
end
end

A benefit of this approach is that, when people start a new Rails app, they may end up putting whatever they’d otherwise put in a helper in a display, since displays have the benefit of having unambiguously resolvable method names.

#325​·​Dennis HackethalOP revised almost 2 years ago​·​Original #313​·​Criticized2Archived

Tested, it works. self does indeed point to the view_context in the helper. Verified by printing object_ids.

#323​·​Dennis HackethalOP revised almost 2 years ago​·​Original #322​·​CriticismArchived

Tested, it works.

#322​·​Dennis HackethalOP, almost 2 years ago​·​CriticismCriticized1Archived

Test this!

#321​·​Dennis HackethalOP, almost 2 years ago​·​CriticismCriticized1Archived

Maybe ‘Display’. ProductsDisplay

#320​·​Dennis HackethalOP, almost 2 years ago​·​Archived

I don’t like the term ‘renderer’ yet. It’s too loaded with meaning, what with Rails already having a render method in controllers and another render method in views…

#319​·​Dennis HackethalOP, almost 2 years ago​·​CriticismArchived

Then how would you call index from a helper method?

#317​·​Dennis HackethalOP revised almost 2 years ago​·​Original #314​·​CriticismCriticized1Archived

Hiccdown methods should live in their own, separate modules. How about they are called ‘renderers’?

ruby
module ProductsRenderer
def self.index vc, # …
vc.some_helper_method
end
end

A benefit of this approach is that, when people start a new Rails app, they may end up putting whatever they’d otherwise put in a helper in a renderer, since renderers have the benefit of having unambiguously resolvable method names.

#316​·​Dennis HackethalOP revised almost 2 years ago​·​Original #313​·​Criticized1Archived

I don’t think that’s something people would do a lot, but they still easily could: ProductsRenderer.index(self)

#315​·​Dennis HackethalOP, almost 2 years ago​·​CriticismArchived

Then how would you call this from a helper method?

#314​·​Dennis HackethalOP, almost 2 years ago​·​CriticismCriticized2Archived

Hiccdown methods should live in their own, separate modules. How about they are called ‘renderers’?

ruby
module ProductsRenderer
def self.index vc, # …
vc.some_helper_method
end
end
#313​·​Dennis HackethalOP, almost 2 years ago​·​Archived

That would be mixing class methods an instance methods in Rails helper modules, which typically only contain instance methods. Not idiomatic Rails usage.

#312​·​Dennis HackethalOP, almost 2 years ago​·​CriticismArchived

If so, there might be a way to bind them to the view_context. Or I could definitely pass the view_context explicitly as the first parameter:

So instead of

ruby
@helper_module.instance_method(@action_name).bind_call(view_context)

I would do

ruby
@helper_module.send(@action_name, view_context)

And the parameter list of each Hiccdown method would start accordingly:

ruby
module ProductsHelper
def self.index vc #, …
vc.some_helper_method
end
def some_helper_method
# …
end
end
#310​·​Dennis HackethalOP revised almost 2 years ago​·​Original #307​·​CriticismArchived

If so, there might be a way to bind them to the view_context. Or I could definitely pass the view_context explicitly as the first parameter:

So instead of

ruby
@helper_module.instance_method(@action_name).bind_call(view_context)

I would do

ruby
@helper_module.send(@action_name, view_context)

And the parameter list of each Hiccdown method would start accordingly:

ruby
module ProductsHelper
def self.index vc #, …
# …
end
end
#308​·​Dennis HackethalOP revised almost 2 years ago​·​Original #307​·​CriticismCriticized1Archived

If so, there might be a way to bind them to the view_context. Or I could definitely pass the view_context explicitly as the first parameter.

#307​·​Dennis HackethalOP, almost 2 years ago​·​CriticismCriticized1Archived

Does that mean they wouldn’t have access to the view_context? If so, calling helper methods from inside these class methods wouldn’t be possible.

#305​·​Dennis HackethalOP revised almost 2 years ago​·​Original #304​·​CriticismCriticized1Archived

Does that mean they wouldn’t have the view_context? If so, calling helper methods from inside these class methods wouldn’t be possible.

#304​·​Dennis HackethalOP, almost 2 years ago​·​CriticismCriticized1Archived

Hiccdown methods should live in Rails helpers as class methods. That way, the problem described in #302 is solved – methods can be referenced unambiguously:

ruby
ProductsHelper.index
StoresHelper.index
#303​·​Dennis HackethalOP, almost 2 years ago​·​Criticized3Archived

Hiccdown methods should live in Rails helpers as instance methods.

#302​·​Dennis HackethalOP revised almost 2 years ago​·​Original #300​·​Criticized2Archived

That isn’t a good idea because Hiccdown methods often share the same conventional names (index, show, etc), which can and does lead to conflict.

#301​·​Dennis HackethalOP, almost 2 years ago​·​CriticismArchived

Hiccdown methods should live in Rails helpers.

#300​·​Dennis HackethalOP, almost 2 years ago​·​Criticized1Archived

I’m pro abortion but I have some pro life in me.

Banning the abortion of a zygote seems ridiculous. So does aborting a seven-month-old fetus.

Why not go with: you can abort until the nervous system develops.

Clearly, an embryo without a nervous system can’t be sentient and thus can’t be a person, right? And as long as it’s not a person, it doesn’t have any rights.

According to https://www.neurosciencefoundation.org/post/brain-development-in-fetus, “an embryo’s brain and nervous system begin to develop at around the 6-week mark.” And: “At as early as 8 weeks (about 2 months), you can see physical evidence of the brain working (the electric impulses) as ultrasounds show the embryo moving.”

This idea is for viable pregnancies only. Other considerations may apply for non-viable ones.

#299​·​Dennis HackethalOP revised almost 2 years ago​·​Original #104​·​ Battle-tested

Clearly, a fetus without a nervous system can’t be sentient and thus can’t be a person, right?

It’s not considered a fetus until week 9, at which point the nervous system has already begun building.

The correct word to use here is ‘embryo’.

#298​·​Dennis HackethalOP, almost 2 years ago​·​Criticism

If an already-born person is deadly ill, that doesn’t mean you can kill them. Why should that be any different for an unborn person?

#279​·​Dennis HackethalOP revised almost 2 years ago​·​Original #278​·​Criticism

If an already-born person is deadly ill, that doesn’t mean you can kill them.

#278​·​Dennis HackethalOP, almost 2 years ago​·​CriticismCriticized1