summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLin Jen-Shin <godfat@godfat.org>2017-11-22 16:10:19 +0800
committerLin Jen-Shin <godfat@godfat.org>2017-11-22 17:06:57 +0800
commit89f29395259326793435044261641f5571e718d0 (patch)
treecfd69c6b05cbd5aa242288a61b94dfc2f6a8523d
parent07d3d44775f6cc5b7a1b768cb4e5b7900d543815 (diff)
downloadgitlab-ce-89f29395259326793435044261641f5571e718d0.tar.gz
Reword Instance variables in views
-rw-r--r--doc/development/module_with_instance_variables.md13
1 files changed, 5 insertions, 8 deletions
diff --git a/doc/development/module_with_instance_variables.md b/doc/development/module_with_instance_variables.md
index 46e7177e704..ff8d4dacd11 100644
--- a/doc/development/module_with_instance_variables.md
+++ b/doc/development/module_with_instance_variables.md
@@ -216,13 +216,9 @@ other random objects, so they're still somewhat isolated.
### Instance variables in views
-They're terrible, because they're also shared between different controllers,
-and it's very hard to track where those instance variables were set when we
-saw somewhere is using it, neither do we know where those were used when we
-saw somewhere is setting up them. We hit into a number of 500 errors when we
-tried to remove some instance variables in the controller in the past.
-
-Somewhere, some partials might be using it, and we don't know.
+They're bad because we can't easily tell who's using the instance variables
+(from controller's point of view) and where we set them up (from partials'
+point of view), making it extremely hard to track data dependency.
We're trying to use something like this instead:
@@ -238,5 +234,6 @@ And in the partial:
- project = local_assigns.fetch(:project)
```
-This way it's clearer where those values were coming from. In the future,
+This way it's clearer where those values were coming from, and we gain the
+benefit to have typo check over using instance variables. In the future,
we should also forbid the use of instance variables in partials.