<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Streamlined: Updates on 0.1.0</title>
    <link>http://streamlinedframework.org/articles/2007/03/22/updates-on-0-1-0</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Stop banging rocks together and build something</description>
    <item>
      <title>Updates on 0.1.0</title>
      <description>&lt;p&gt;First of all, thanks to everybody who jumped in on the beta and has been sending comments.  We know the code is in high flux, and those who have stuck with it, we appreciate the feedback a lot.  Thanks!
&lt;/p&gt;

&lt;p&gt;Second, I&amp;#8217;d like to give some previews to the kinds of changes you will find when we release the new codebase.  Perhaps most importantly to a lot of you, the declarative syntax for managing columns and relationships has been simplified and combined.  You can expect your old version:&lt;/p&gt;

&lt;pre&gt;
class EmployeeUI &amp;lt; Streamlined::UI
   user_columns :name, :email, :hire_date

   relationship :boss, {:summary =&amp;gt; {:name =&amp;gt; :name, :fields =&amp;gt; [:first_name, :last_name]}
end
&lt;/pre&gt;

	&lt;p&gt;to look more like this:&lt;/p&gt;


&lt;pre&gt;
class EmployeeUI &amp;lt; Streamlined::UI
   user_columns  :name, {:link_to=&amp;gt;{:action=&amp;gt;'edit'}}, 
                        :email,
                        :hire_date, {:read_only=&amp;gt;true},
                        :boss, {:show_view=&amp;gt; [:name, {:fields=&amp;gt;[:first_name,:last_name]}]}

   edit_columns   :name, :email
end
&lt;/pre&gt;

&lt;p&gt;As you can see, relationship are combined into columns, and order is maintained across both.  So if you moved :boss up to right after :name, the relationship column for :boss would be the second column in the list table.&lt;/p&gt;

&lt;p&gt;Also, the optional overrides &amp;#8216;edit_columns&amp;#8217; and &amp;#8216;show_columns&amp;#8217; give you a way to specify those subviews.  If not specified, they simply inherit from the list view.&lt;/p&gt;

&lt;p&gt;You might also notice the addition of :link_to as an option for any column, which can take the standard url_for or RESTful url methods, or a raw &lt;span class="caps"&gt;URL&lt;/span&gt;.&lt;/p&gt;

&lt;p&gt;Another major change is that we&amp;#8217;ve changed the default behavior for editing/showing to non-Ajax.  Instead of Prototype Windows being the default, we&amp;#8217;ll use standard redirects.  However, switching between the two types is as simple as including the right helper in your controllers.  And the decision can be per-controller. For example:&lt;/p&gt;

&lt;pre&gt;
class DepartmentsController &amp;lt; ApplicationController
    acts_as_streamlined
    include Streamlined::Helpers::PrototypeWindowsLinkHelper
end
&lt;/pre&gt;

&lt;p&gt;That will switch the DepartmentsController to use the Prototype Windows-style edit and show behavior.  Obviously, to change the style app-wide, you would just include that helper in ApplicationController.&lt;/p&gt;

&lt;p&gt;That&amp;#8217;s probably enough for this brain dump; look for all of this over on the &lt;a href="http://streamlinedframework.org:8079/trac/"&gt;Trac wiki&lt;/a&gt; today, with a downloadable sample project as well.&lt;/p&gt;</description>
      <pubDate>Thu, 22 Mar 2007 10:07:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:047ea48f-0b2d-498b-9868-aa124e6f062c</guid>
      <author></author>
      <link>http://streamlinedframework.org/articles/2007/03/22/updates-on-0-1-0</link>
      <category>Releases</category>
      <category>Features</category>
      <trackback:ping>http://streamlinedframework.org/articles/trackback/84</trackback:ping>
    </item>
  </channel>
</rss>
