Skip to content

Commit afd25b2

Browse files
committed
added documentation on the polymorphic associations referential integrity pattern
1 parent 1664486 commit afd25b2

6 files changed

Lines changed: 2015 additions & 1 deletion

File tree

README.rdoc

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,13 @@ Gems are packaged, following this article:
99

1010
http://ryan.mcgeary.org/2011/02/09/vendor-everything-still-applies/
1111

12-
== Importing data for development
12+
== Database
13+
14+
We use PostgreSQL. Polymorphic associations are enhanced with this referential integrity pattern:
15+
http://blog.metaminded.com/2010/11/25/stable-polymorphic-foreign-key-relations-in-rails-with-postgresql/
16+
(hard copy in doc)
17+
18+
=== Importing data for development
1319
FILE=lib/assets/files/20_animal_species.csv rake import:species
1420

1521
== Taxonomic glossaries

doc/Stable polymorphic foreign key relations in Rails with PostgreSQL |.html

Lines changed: 285 additions & 0 deletions
Large diffs are not rendered by default.
10.9 KB
Loading
Lines changed: 328 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,328 @@
1+
/**
2+
* SyntaxHighlighter
3+
* http://alexgorbatchev.com/SyntaxHighlighter
4+
*
5+
* SyntaxHighlighter is donationware. If you are using it, please donate.
6+
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
7+
*
8+
* @version
9+
* 3.0.83 (July 02 2010)
10+
*
11+
* @copyright
12+
* Copyright (C) 2004-2010 Alex Gorbatchev.
13+
*
14+
* @license
15+
* Dual licensed under the MIT and GPL licenses.
16+
*/
17+
.syntaxhighlighter a,
18+
.syntaxhighlighter div,
19+
.syntaxhighlighter code,
20+
.syntaxhighlighter table,
21+
.syntaxhighlighter table td,
22+
.syntaxhighlighter table tr,
23+
.syntaxhighlighter table tbody,
24+
.syntaxhighlighter table thead,
25+
.syntaxhighlighter table caption,
26+
.syntaxhighlighter textarea {
27+
-moz-border-radius: 0 0 0 0 !important;
28+
-webkit-border-radius: 0 0 0 0 !important;
29+
background: none !important;
30+
border: 0 !important;
31+
bottom: auto !important;
32+
float: none !important;
33+
height: auto !important;
34+
left: auto !important;
35+
line-height: 1.1em !important;
36+
margin: 0 !important;
37+
outline: 0 !important;
38+
overflow: visible !important;
39+
padding: 0 !important;
40+
position: static !important;
41+
right: auto !important;
42+
text-align: left !important;
43+
top: auto !important;
44+
vertical-align: baseline !important;
45+
width: auto !important;
46+
box-sizing: content-box !important;
47+
font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
48+
font-weight: normal !important;
49+
font-style: normal !important;
50+
font-size: 1em !important;
51+
min-height: inherit !important;
52+
min-height: auto !important;
53+
}
54+
55+
.syntaxhighlighter {
56+
width: 100% !important;
57+
margin: 1em 0 1em 0 !important;
58+
position: relative !important;
59+
overflow: auto !important;
60+
font-size: 1em !important;
61+
}
62+
.syntaxhighlighter.source {
63+
overflow: hidden !important;
64+
}
65+
.syntaxhighlighter .bold {
66+
font-weight: bold !important;
67+
}
68+
.syntaxhighlighter .italic {
69+
font-style: italic !important;
70+
}
71+
.syntaxhighlighter .line {
72+
white-space: pre !important;
73+
}
74+
.syntaxhighlighter table {
75+
width: 100% !important;
76+
}
77+
.syntaxhighlighter table caption {
78+
text-align: left !important;
79+
padding: .5em 0 0.5em 1em !important;
80+
}
81+
.syntaxhighlighter table td.code {
82+
width: 100% !important;
83+
}
84+
.syntaxhighlighter table td.code .container {
85+
position: relative !important;
86+
}
87+
.syntaxhighlighter table td.code .container textarea {
88+
box-sizing: border-box !important;
89+
position: absolute !important;
90+
left: 0 !important;
91+
top: 0 !important;
92+
width: 100% !important;
93+
height: 100% !important;
94+
border: none !important;
95+
background: white !important;
96+
padding-left: 1em !important;
97+
overflow: hidden !important;
98+
white-space: pre !important;
99+
}
100+
.syntaxhighlighter table td.gutter .line {
101+
text-align: right !important;
102+
padding: 0 0.5em 0 1em !important;
103+
}
104+
.syntaxhighlighter table td.code .line {
105+
padding: 0 1em !important;
106+
}
107+
.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
108+
padding-left: 0em !important;
109+
}
110+
.syntaxhighlighter.show {
111+
display: block !important;
112+
}
113+
.syntaxhighlighter.collapsed table {
114+
display: none !important;
115+
}
116+
.syntaxhighlighter.collapsed .toolbar {
117+
padding: 0.1em 0.8em 0em 0.8em !important;
118+
font-size: 1em !important;
119+
position: static !important;
120+
width: auto !important;
121+
height: auto !important;
122+
}
123+
.syntaxhighlighter.collapsed .toolbar span {
124+
display: inline !important;
125+
margin-right: 1em !important;
126+
}
127+
.syntaxhighlighter.collapsed .toolbar span a {
128+
padding: 0 !important;
129+
display: none !important;
130+
}
131+
.syntaxhighlighter.collapsed .toolbar span a.expandSource {
132+
display: inline !important;
133+
}
134+
.syntaxhighlighter .toolbar {
135+
position: absolute !important;
136+
right: 1px !important;
137+
top: 1px !important;
138+
width: 11px !important;
139+
height: 11px !important;
140+
font-size: 10px !important;
141+
z-index: 10 !important;
142+
}
143+
.syntaxhighlighter .toolbar span.title {
144+
display: inline !important;
145+
}
146+
.syntaxhighlighter .toolbar a {
147+
display: block !important;
148+
text-align: center !important;
149+
text-decoration: none !important;
150+
padding-top: 1px !important;
151+
}
152+
.syntaxhighlighter .toolbar a.expandSource {
153+
display: none !important;
154+
}
155+
.syntaxhighlighter.ie {
156+
font-size: .9em !important;
157+
padding: 1px 0 1px 0 !important;
158+
}
159+
.syntaxhighlighter.ie .toolbar {
160+
line-height: 8px !important;
161+
}
162+
.syntaxhighlighter.ie .toolbar a {
163+
padding-top: 0px !important;
164+
}
165+
.syntaxhighlighter.printing .line.alt1 .content,
166+
.syntaxhighlighter.printing .line.alt2 .content,
167+
.syntaxhighlighter.printing .line.highlighted .number,
168+
.syntaxhighlighter.printing .line.highlighted.alt1 .content,
169+
.syntaxhighlighter.printing .line.highlighted.alt2 .content {
170+
background: none !important;
171+
}
172+
.syntaxhighlighter.printing .line .number {
173+
color: #bbbbbb !important;
174+
}
175+
.syntaxhighlighter.printing .line .content {
176+
color: black !important;
177+
}
178+
.syntaxhighlighter.printing .toolbar {
179+
display: none !important;
180+
}
181+
.syntaxhighlighter.printing a {
182+
text-decoration: none !important;
183+
}
184+
.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
185+
color: black !important;
186+
}
187+
.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
188+
color: #008200 !important;
189+
}
190+
.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
191+
color: blue !important;
192+
}
193+
.syntaxhighlighter.printing .keyword {
194+
color: #006699 !important;
195+
font-weight: bold !important;
196+
}
197+
.syntaxhighlighter.printing .preprocessor {
198+
color: gray !important;
199+
}
200+
.syntaxhighlighter.printing .variable {
201+
color: #aa7700 !important;
202+
}
203+
.syntaxhighlighter.printing .value {
204+
color: #009900 !important;
205+
}
206+
.syntaxhighlighter.printing .functions {
207+
color: #ff1493 !important;
208+
}
209+
.syntaxhighlighter.printing .constants {
210+
color: #0066cc !important;
211+
}
212+
.syntaxhighlighter.printing .script {
213+
font-weight: bold !important;
214+
}
215+
.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
216+
color: gray !important;
217+
}
218+
.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
219+
color: #ff1493 !important;
220+
}
221+
.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
222+
color: red !important;
223+
}
224+
.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
225+
color: black !important;
226+
}
227+
228+
.syntaxhighlighter {
229+
background-color: white !important;
230+
}
231+
.syntaxhighlighter .line.alt1 {
232+
background-color: white !important;
233+
}
234+
.syntaxhighlighter .line.alt2 {
235+
background-color: #f8f8f8 !important;
236+
}
237+
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
238+
background-color: #e0e0e0 !important;
239+
}
240+
.syntaxhighlighter .line.highlighted.number {
241+
color: black !important;
242+
}
243+
.syntaxhighlighter table caption {
244+
color: black !important;
245+
}
246+
.syntaxhighlighter .gutter {
247+
color: #afafaf !important;
248+
}
249+
.syntaxhighlighter .gutter .line {
250+
border-right: 3px solid #6ce26c !important;
251+
}
252+
.syntaxhighlighter .gutter .line.highlighted {
253+
background-color: #6ce26c !important;
254+
color: white !important;
255+
}
256+
.syntaxhighlighter.printing .line .content {
257+
border: none !important;
258+
}
259+
.syntaxhighlighter.collapsed {
260+
overflow: visible !important;
261+
}
262+
.syntaxhighlighter.collapsed .toolbar {
263+
color: blue !important;
264+
background: white !important;
265+
border: 1px solid #6ce26c !important;
266+
}
267+
.syntaxhighlighter.collapsed .toolbar a {
268+
color: blue !important;
269+
}
270+
.syntaxhighlighter.collapsed .toolbar a:hover {
271+
color: red !important;
272+
}
273+
.syntaxhighlighter .toolbar {
274+
color: white !important;
275+
background: #6ce26c !important;
276+
border: none !important;
277+
}
278+
.syntaxhighlighter .toolbar a {
279+
color: white !important;
280+
}
281+
.syntaxhighlighter .toolbar a:hover {
282+
color: black !important;
283+
}
284+
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
285+
color: black !important;
286+
}
287+
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
288+
color: #008200 !important;
289+
}
290+
.syntaxhighlighter .string, .syntaxhighlighter .string a {
291+
color: blue !important;
292+
}
293+
.syntaxhighlighter .keyword {
294+
color: #006699 !important;
295+
}
296+
.syntaxhighlighter .preprocessor {
297+
color: gray !important;
298+
}
299+
.syntaxhighlighter .variable {
300+
color: #aa7700 !important;
301+
}
302+
.syntaxhighlighter .value {
303+
color: #009900 !important;
304+
}
305+
.syntaxhighlighter .functions {
306+
color: #ff1493 !important;
307+
}
308+
.syntaxhighlighter .constants {
309+
color: #0066cc !important;
310+
}
311+
.syntaxhighlighter .script {
312+
font-weight: bold !important;
313+
color: #006699 !important;
314+
background-color: none !important;
315+
}
316+
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
317+
color: gray !important;
318+
}
319+
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
320+
color: #ff1493 !important;
321+
}
322+
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
323+
color: red !important;
324+
}
325+
326+
.syntaxhighlighter .keyword {
327+
font-weight: bold !important;
328+
}
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
/* Social Media Links */
2+
.simple_socialmedia {
3+
overflow: hidden;
4+
padding: 0;
5+
text-align:center;
6+
color: #0B0B0B;
7+
font-size: 11px;
8+
border-top: 1px solid #e1e1e0;
9+
border-bottom: 1px solid #e1e1e0;
10+
width:100%;
11+
}
12+
13+
.simple_socialmedia ul {
14+
list-style-type:none;
15+
margin:0;
16+
padding:5px 0;
17+
}
18+
19+
.simple_socialmedia ul li {
20+
padding: 5px 10px 5px 20px;
21+
line-height:18px;
22+
display:inline;
23+
margin:0;
24+
}
25+
26+
.simple_socialmedia ul li a{
27+
color:#000000;
28+
text-decoration:none;
29+
}
30+
31+
.simple_socialmedia ul li a:hover {text-decoration:none;}
32+
33+
.simple_socialmedia ul li.sharetext {font-weight:bold;padding: 5px 5px 5px 0;}
34+
.simple_socialmedia ul li.twitter {background:url(images/mini_twitter.png) no-repeat left;}
35+
.simple_socialmedia ul li.facebook {background:url(images/mini_facebook.png) no-repeat left;}
36+
.simple_socialmedia ul li.stumble {background:url(images/mini_stumble.png) no-repeat left;}
37+
.simple_socialmedia ul li.digg {background:url(images/mini_digg.png) no-repeat left;}
38+
.simple_socialmedia ul li.delicious {background:url(images/mini_delicious.png) no-repeat left;}

0 commit comments

Comments
 (0)