<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: inheritance</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/inheritance.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2008-04-12T12:54:51+00:00</updated><author><name>Simon Willison</name></author><entry><title>Multiple inheritance of newforms and modelforms</title><link href="https://simonwillison.net/2008/Apr/12/django/#atom-tag" rel="alternate"/><published>2008-04-12T12:54:51+00:00</published><updated>2008-04-12T12:54:51+00:00</updated><id>https://simonwillison.net/2008/Apr/12/django/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.djangosnippets.org/snippets/703/"&gt;Multiple inheritance of newforms and modelforms&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
If you ever see “Error when calling the metaclass bases metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases” when trying multiple inheritance with newforms and modelforms, here’s a scary solution I found.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/inheritance"&gt;inheritance&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/metaclasses"&gt;metaclasses&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/modelforms"&gt;modelforms&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/multipleinheritance"&gt;multipleinheritance&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/newforms"&gt;newforms&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;&lt;/p&gt;



</summary><category term="django"/><category term="inheritance"/><category term="metaclasses"/><category term="modelforms"/><category term="multipleinheritance"/><category term="newforms"/><category term="python"/></entry><entry><title>queryset-refactor changeset 7126</title><link href="https://simonwillison.net/2008/Feb/18/changeset/#atom-tag" rel="alternate"/><published>2008-02-18T09:46:29+00:00</published><updated>2008-02-18T09:46:29+00:00</updated><id>https://simonwillison.net/2008/Feb/18/changeset/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://code.djangoproject.com/changeset/7126"&gt;queryset-refactor changeset 7126&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Malcolm just checked model inheritance in to the queryset-refactor branch, with full documentation and unit tests. People have been requesting this for ages.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/inheritance"&gt;inheritance&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/querysetrefactor"&gt;querysetrefactor&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/testing"&gt;testing&lt;/a&gt;&lt;/p&gt;



</summary><category term="django"/><category term="inheritance"/><category term="python"/><category term="querysetrefactor"/><category term="testing"/></entry><entry><title>Transitioning from Java Classes to JavaScript Prototypes</title><link href="https://simonwillison.net/2008/Feb/10/classes/#atom-tag" rel="alternate"/><published>2008-02-10T15:10:21+00:00</published><updated>2008-02-10T15:10:21+00:00</updated><id>https://simonwillison.net/2008/Feb/10/classes/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://peter.michaux.ca/article/5004"&gt;Transitioning from Java Classes to JavaScript Prototypes&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Peter Michaux shows how JavaScript’s prototypal inheritance can run rings around traditional Java-style classes once you figure out how to take advantage of it.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/inheritance"&gt;inheritance&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/java"&gt;java&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/object-oriented-programming"&gt;object-oriented-programming&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/pete-michaux"&gt;pete-michaux&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/prototypal-inheritance"&gt;prototypal-inheritance&lt;/a&gt;&lt;/p&gt;



</summary><category term="inheritance"/><category term="java"/><category term="javascript"/><category term="object-oriented-programming"/><category term="pete-michaux"/><category term="prototypal-inheritance"/></entry></feed>