Rails makes doing common tasks relatively easy, however it adds a level of complexity. Rails adds relationships and dependencies that are not obvious through the use of conventions, meta-programming and naming patterns. The Dependencies View helps reduce the complexity by keeping a dynamic view of class and logical relationships.
While you navigate source code or nodes in the Rails Explorer, you can use the Dependencies View to track focus and show the dependencies (class, method, controller, action, view, attributes). The Dependencies View shows references to and from a selected class or method.
For a demonstration of the Dependencies View, see the video Using the Dependencies View.
The Dependencies View is a very useful tool for navigating and introspecting software. Relationships are determined by type inference and semantic analysis. Dependencies are updated in real-time during editing and navigation. Relationships, between controllers, actions, views, models, helpers, routes, migrations, schema and tests are related and determined by convention and method call analysis.
This screen example shows the Dependencies View:
In this example the Model class LinItem is open in the
. It shows these Outbound dependencies:It shows these Inbound dependencies:
Note: |
Use of the "depot" application for demonstration purposes generously granted by Dave Thomas, author of The Pragmatic Programmers' "Agile Web Development with Rails" . |
User Case | Action | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Open the Dependencies View |
From the workbench select: The Dependencies View
|
||||||||||||||||||
Change the Active Selection in an Editor |
The Active selection changes dynamically during project navigation. Focus the Dependency view on a specific element by placing the cursor in the desired element. |
||||||||||||||||||
Change the Active Selection in a View |
Select an element in the |
||||||||||||||||||
Navigate a project from the Dependencies View |
Double-click an element in the to open it. |
||||||||||||||||||
Change View Filtering |
|