summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOndrej Zara <ondrej.zara@gmail.com>2013-07-16 09:15:07 +0200
committerOndrej Zara <ondrej.zara@gmail.com>2013-07-16 09:15:07 +0200
commitc9cbed9de8b788865b750454fe824b0288a69cf3 (patch)
tree36d00431f6f9c6e06da50d5934ae93cda799dca3
parentfcdba37e863ed97e63c277527a01879cf3933074 (diff)
parent0666b60ea80bcdbb9737849aa3e758e283ed00a5 (diff)
downloadwwwsqldesigner-c9cbed9de8b788865b750454fe824b0288a69cf3.zip
wwwsqldesigner-c9cbed9de8b788865b750454fe824b0288a69cf3.tar.gz
wwwsqldesigner-c9cbed9de8b788865b750454fe824b0288a69cf3.tar.bz2
merge
-rw-r--r--db/web2py/output.xsl28
1 files changed, 14 insertions, 14 deletions
diff --git a/db/web2py/output.xsl b/db/web2py/output.xsl
index 8b2fd03..26c2450 100644
--- a/db/web2py/output.xsl
+++ b/db/web2py/output.xsl
@@ -39,14 +39,16 @@
<xsl:value-of select="@name"/>
<xsl:text>",</xsl:text>
<xsl:for-each select="row">
+ <xsl:variable name="row"><xsl:value-of select="@name" /></xsl:variable>
<xsl:choose>
<!-- ignore id fields as web2py needs it for building relations and will create them automatically -->
<xsl:when test="not(@name = 'id')">
<xsl:text>&#xa; Field("</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:text>"</xsl:text>
<xsl:choose>
<xsl:when test="not (relation)">
- <xsl:value-of select="@name"/>
- <xsl:text>", </xsl:text>
+ <xsl:text>, </xsl:text>
<xsl:choose>
<xsl:when test="contains(datatype,'(')">
<xsl:text>"</xsl:text>
@@ -84,34 +86,32 @@
</xsl:choose>
</xsl:when>
<xsl:otherwise>
- <xsl:value-of select="@name"/>
- <xsl:text>", "reference </xsl:text>
+ <xsl:text>, "reference </xsl:text>
<xsl:for-each select="relation">
<xsl:value-of select="@table"/>
</xsl:for-each>
<xsl:text>"</xsl:text>
</xsl:otherwise>
</xsl:choose>
+
+ <!-- keys -->
+ <xsl:for-each select="../key[@type='UNIQUE']/part">
+ <xsl:if test="text() = $row">, unique=True</xsl:if>
+ </xsl:for-each>
+
+ <xsl:text>)</xsl:text>
</xsl:when>
</xsl:choose>
- <xsl:if test="not (@name = 'id')">
- <xsl:text>)</xsl:text>
- </xsl:if>
<xsl:if test="not (position()=last())">
<xsl:if test="not (@name = 'id')">
<xsl:text>,</xsl:text>
</xsl:if>
</xsl:if>
</xsl:for-each>
- <!-- keys -->
- <!-- maybe something else except unique??-->
- <xsl:for-each select="key">
- <xsl:choose>
- <xsl:when test="@type = 'UNIQUE'">unique=True</xsl:when>
- </xsl:choose>
- </xsl:for-each>
+
<xsl:text>)</xsl:text>
<xsl:text>&#xa;&#xa;</xsl:text>
+
</xsl:template>
<!-- parsing db xml file -->
<xsl:template match="/sql">