Search Results

Search found 33788 results on 1352 pages for 'codeit right'.

Page 74/1352 | < Previous Page | 70 71 72 73 74 75 76 77 78 79 80 81  | Next Page >

  • iPhone/Objective-C struct question my own CGRectZero

    - by Mark
    I am designing a Padding struct as follows: /* Padding. */ struct CGPadding { CGFloat left; CGFloat top; CGFloat right; CGFloat bottom; }; typedef struct CGPadding CGPadding; CG_INLINE CGPadding CGPaddingMake(CGFloat left, CGFloat top, CGFloat right, CGFloat bottom) { CGPadding p; p.left = left; p.top = top; p.right = right; p.bottom = bottom; return p; } This all works perfectly well, the problem is how can I create a const CGPadding CGPaddingZero? If I do like this: const CGPadding CGPaddingZero = (CGPadding){0.0, 0.0, 0.0, 0.0}; It doesnt work. So what am I doing wrong?

    Read the article

  • 2-col layout, one col scrolls vertical, other is fixed. Both scroll horizontal.

    - by Victor P
    Im trying to do a 2 column layout where the left column is very long vertically, and the right column is very long horizontally. When I scroll vertically, I want to move up and down the left column while the right one stays fixed. When I scroll horizontally, both columns move left-right (normal behaviour) I hope this drawing explain it more (sorry for the bad quality): Is this possible to do using only css? If not, how can I do it with javascript? Thanks

    Read the article

  • How to implement Gradient Opacity (Mask) using html css javascript

    - by brz dot net
    I have to show 25% right screen in such way that the text looks appeared from right. For this I need to set opacity from 0 to 100 at 25% right side screen means rightmost opacity would be 0 and at 75% the opacity would be 100. For this, I took a Div and set opacity but It looks bad because of border. I need to gray out text. It looks a block. Let me know how I can implement cross browser compatible gradient opacity mask for right screen text. What is the best way to do this?

    Read the article

  • What data type should I use for my texture coordinates in OpenGL ES?

    - by Matthew Chen
    I notice that the default data type for texture coordinates in the OpenGL docs is GLfloat, but much of the sample code I see written by experienced iphone developers uses GLshort or GLbyte. Is this an optimization? GLfloat vertices[] = { // Upper left x1, y2, // Lower left x1, y1, // Lower right x2, y1, // Upper right x2, y2, }; glTexCoordPointer(2, GL_FLOAT, 0, iconSTs); vs. GLbyte vertices[] = { // Upper left x1, y2, // Lower left x1, y1, // Lower right x2, y1, // Upper right x2, y2, }; glTexCoordPointer(2, GL_BYTE, 0, iconSTs);

    Read the article

  • Visual Studio and .NET programming

    - by Vit
    Hi, I just want to ask wheather I am right or not about .NET. So, .NET is new framework that enables you to easily implement new and old windows functions. It is similiar to java in the way that its also compiled into "bytecode", but its name is Common Language Infrastructure, or CLI. This language is interpreted by .NET Framework, so code generated by programming using .NET cannot be executed directly by CPU. Now, few languages can be compiled to CLI. First, it was Microsoft-developed C#, than J#, C++ others. I suspect that this is in general right, at least I hope I understand it right. But, what I am still missing is, can you write to machine code compiled code in C#? And, if using Visual Studio 2005, when I select Win32 project, it is compiled into machine code, so only thing you need to run this apps are windows dynamic-link libraries, since static libraries code is implemented into app durink linking phase. And those dynamic-link libraries are implemented in every windows installation, or provided by DirectX installations. But when I select CLR in Visual Studio 2005, than app is compiled into CLI code, and it first executes .NET framework, and than .NET framework executes that program, since its not in machine code. So, I am right? I ask becouse you can read these infos on the internet, but I have noone to tell me wheather I understand it right or not. Thanks.

    Read the article

  • How can I diff against a revision of a single file using only the default Git GUI tools?

    - by Rich
    I want to view the history of a single file, and then compare a single revision from that history against the current version. On the command line, this is easy: Run: git log -- <filename> Locate the version you want to compare, Run: git diff <commitid> -- <filename> But how can this be done using only the default Git gui tools, git gui and gitk? I know of two methods using gitk, but they're both horribly clunky: Either: Select the New View option from the View menu, Type in the full path to your file into the box labelled Enter files and directories to include, one per line, Locate the version you want to compare by looking at the highlighted items in the top pane, and click on it to select it, Right-click on the current version and select Diff selected - this, Or: Select Tree in the bottom right-hand pane, Locate the file you want to look at, right-click on it, and select Highlight this only, Locate the version you want to compare by looking at the highlighted items in the top pane, and click on it to select it, Right-click on the current version and select Diff selected - this, Click on the file in the bottom right-hand pane to jump to it in the diff output, or scroll manually. Is a better method than this?

    Read the article

  • Python: Why Does a Method Behave Differently with an Added Parameter?

    - by SteveStifler
    I have a method in a Pygame Sprite subclass, defined as such: def walk(self): """move across screen""" displacement = self.rect.move((self.move, 0)) if self.rect.left < self.area.left or self.rect.right > self.area.right: self.move = -self.move displacement = self.rect.move((self.move, 0)) self.rect = displacement I modified it, adding a parameter speed_x, and now the program is broken. def walk(self, speed_x): """move across screen""" displacement = self.rect.move((speed_x, 0)) if self.rect.left < self.area.left or self.rect.right > self.area.right: speed_x = -speed_x displacement = self.rect.move((speed_x, 0)) self.rect = displacement Before I called the method like this: def update(self): self.walk() Now I do: def update(self): self.walk(self.move) Why doesn't this work?

    Read the article

  • Need help from CSS purist!

    - by Darcy
    I'm beginning to use CSS more and more but I'm not sure if I'm using it as intended in all cases. I have classes named things like 'box' that will wrap the content inside it with a border, which seems like good CSS to me. On the other hand I have classes like 'margin-right-5' and 'float-left' that sets the css to margin-right: 5px and float:left respectively. I'm wondering if this is good practice. Then in my markup I'd do something like: <div class="box float-left margin-right-5"> <!-- CONTENT HERE --> </div> Sometimes I may want to float right or not have a margin at all and still use the 'box' class, so I use several classes in order to make the css more flexible. Am I destroying the principles of CSS?

    Read the article

  • CSS Positioning

    - by Davey
    Trying to mess with this wordpress theme and can't figure out why the sidebar is stacking underneath the content block. Any help would be very appreciated. http://www.buffalostreetbooks.com/events CSS: body { font-family: Arial, Helvetica, Verdana, Sans-serif; font-size: 10pt; background-color: #692022; background-image:url("http://www.buffalostreetbooks.com/wp-content/themes/autumn-leaves/images/repeatflower.png"); } body,h1#blog-title { margin: 0; padding: 0; } a { color: blue; } a:hover { color: #FF8C00; } a img { border: 0 none; } #wrapper { width: 960px; margin: 0 auto; background-color: #F4FBF4; border-left: 1px solid #ccc; border-right: 1px solid #ccc; } #header { background-image:url("http://www.buffalostreetbooks.com/wp-content/themes/autumn-leaves/images/headertime.png"); width:768px; height: 200px; } #inner-header { padding: 125px 1em 0; } h1#blog-title { font-size: 2em; } h1#blog-title a { color: #800000; } .entry-title a { color: #CD853F; } h1#blog-title a, .entry-title a, #footer a { text-decoration: none; } h1#blog-title a:hover, .entry-title a:hover, #footer a:hover { text-decoration: underline; } div.skip-link { display: none; } #menu { border-bottom: 1px solid #ccc; } #menu a { color: #000; } #menu a:hover { text-decoration: underline; } #menu li.current_page_item a, #menu li.current_page_item a:hover { background-color: #DFC28B; text-decoration: none; } #content { padding: 1em; width:600px; } .entry-title { font-size: 1.5em; margin: 1em 0 0 0; } abbr.published { color: #666; border: 0 none; } .entry-meta, .entry-date { color: #666; } #comments-list .avatar { float: left; margin-right: 1em; } #comments-list .n { font-weight: bold; } .entry-meta, .comment-meta { font-style: italic; } #comments-list p { clear: left; } #primary { padding-left: 1em; font-size: 0.9em; border-left: 1px solid #ccc; border-bottom: 1px solid #ccc; background-color: #FFFACD; } #footer { text-align: center; font-size: 0.8em; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; margin-bottom: 1em; } #inner-footer { padding: 1em 0; } .entry-meta, .entry-meta a, .comment-meta, .comment-meta a, .sidebar, .sidebar a, #footer, #footer a { color: #666; } /* LAYOUT: Two-Column (Right) DESCRIPTION: Two-column fluid layout with one sidebars right of content */ div#container { margin:0 0 0 0; width:960px; height:100%; } div#content { margin:0 0 0 0; } div.sidebar { overflow:hidden; width:280px; min-height:500px; clear:both; } div#secondary { clear:right; } div#footer { clear:both; width:100%; } /* Just some example content */ div#menu { height:2em; width:100%; } div#menu ul,div#menu ul ul { line-height:2em; list-style:none; margin:0; padding:0; } div#menu ul a { display:block; margin-right:1em; padding:0 0.5em; text-decoration:none; } div#menu ul ul ul a { font-style:italic; } div#menu ul li ul { left:-999em; position:absolute; } div#menu ul li:hover ul { left:auto; } .entry-title,.entry-meta { clear:both; } div#primary { } form#commentform .form-label { margin:1em 0 0; } form#commentform span.required { background:#fff; color:#c30; } form#commentform,form#commentform p { padding:0; } input#author,input#email,input#url,textarea#comme nt { padding:0.2em; } div.comments ol li { margin:0 0 3.5em; } textarea#comment { height:13em; margin:0 0 0.5em; overflow:auto; width:66%; } .alignright,img.alignright{ float:right; margin:1em 0 0 1em; } .alignleft,img.alignleft{ float:left; margin:1em 1em 0 0; } .aligncenter,img.aligncenter{ display:block; margin:1em auto; text-align:center; } div.gallery { clear:both; height:180px; margin:1em 0; width:100%; } p.wp-caption-text{ font-style:italic; } div.gallery dl{ margin:1em auto; overflow:hidden; text-align:center; } div.gallery dl.gallery-columns-1 { width:100%; } div.gallery dl.gallery-columns-2 { width:49%; } div.gallery dl.gallery-columns-3 { width:33%; } div.gallery dl.gallery-columns-4 { width:24%; } div.gallery dl.gallery-columns-5 { width:19%; } div#nav-above { margin-bottom:1em; } div#nav-below { margin-top:1em; } div#nav-images { height:150px; margin:1em 0; } div.navigation { height:1.25em; } div.navigation div.nav-next { float:right; text-align:right; } div.sidebar h3 { font-size:1.2em; } div.sidebar input#s { width:7em; } div.sidebar li { list-style:none; margin:0 0 2em; } div.sidebar li form { margin:0.2em 0 0; padding:0; } div.sidebar ul ul { margin:0 0 0 2em; } div.sidebar ul ul li { list-style:disc; margin:0; } div.sidebar ul ul ul { margin:0 0 0 0.5em; } div.sidebar ul ul ul li { list-style:circle; } div#menu ul li,div.gallery dl,div.navigation div.nav-previous { float:left; } input#author,input#email,input#url,div.navigation div { width:50%; } div.gallery *,div.sidebar div,div.sidebar h3,div.sidebar ul { margin:0; padding:0; }

    Read the article

  • Calculating volume for sphere in c++

    - by Crystal
    This is probably an easy one, but is the right way to calculate volume for a sphere in c++. My getArea() seems to be right, but when I call getVolume() it doesn't output the right amount. With a sphere of radius = 1, it gives me the answer of pi, which is incorrect: double Sphere::getArea() const { return 4 * Shape::pi * pow(getZ(), 2); } double Sphere::getVolume() const { return (4 / 3) * Shape::pi * pow(getZ(), 3); }

    Read the article

  • errors when trying to delete a key in the registry

    - by NightsEVil
    i'm trying to delete a registry from the Local_Machine\Software in the registry i made a key titles "DeleteMe" as a test to try it out but i cant get it to work iv tried multiple options and they all say that the "subkey" "subkeytree" and "value" do not exist BUT IT DOES! and i hope i'm using the right terminology here to its HKEY_LOCAL_MACHINE\SOFTWARE\DeleteMe i want it and all the sub keys/values deleted.. (i hope key is the right terminology they look just like folders but when right clicked on they have the option "copy key name")

    Read the article

  • How to find largest common sub-tree in the given two binary search trees?

    - by Bhushan
    Two BSTs (Binary Search Trees) are given. How to find largest common sub-tree in the given two binary trees? EDIT 1: Here is what I have thought: Let, r1 = current node of 1st tree r2 = current node of 2nd tree There are some of the cases I think we need to consider: Case 1 : r1.data < r2.data 2 subproblems to solve: first, check r1 and r2.left second, check r1.right and r2 Case 2 : r1.data > r2.data 2 subproblems to solve: - first, check r1.left and r2 - second, check r1 and r2.right Case 3 : r1.data == r2.data Again, 2 cases to consider here: (a) current node is part of largest common BST compute common subtree size rooted at r1 and r2 (b)current node is NOT part of largest common BST 2 subproblems to solve: first, solve r1.left and r2.left second, solve r1.right and r2.right I can think of the cases we need to check, but I am not able to code it, as of now. And it is NOT a homework problem. Does it look like?

    Read the article

  • Improve performance of searching JSON object with jQuery

    - by cale_b
    Please forgive me if this is answered on SO somewhere already. I've searched, and it seems as though this is a fairly specific case. Here's an example of the JSON (NOTE: this is very stripped down - this is dynamically loaded, and currently there are 126 records): var layout = { "2":[{"id":"40","attribute_id":"2","option_id":null,"design_attribute_id":"4","design_option_id":"131","width":"10","height":"10", "repeat":"0","top":"0","left":"0","bottom":"0","right":"0","use_right":"0","use_bottom":"0","apply_to_options":"0"}, {"id":"41","attribute_id":"2","option_id":"115","design_attribute_id":"4","design_option_id":"131","width":"2","height":"1", "repeat":"0","top":"0","left":"0","bottom":"4","right":"2","use_right":"0","use_bottom":"0","apply_to_options":"0"}, {"id":"44","attribute_id":"2","option_id":"118","design_attribute_id":"4","design_option_id":"131","width":"10","height":"10", "repeat":"0","top":"0","left":"0","bottom":"0","right":"0","use_right":"0","use_bottom":"0","apply_to_options":"0"}], "5":[{"id":"326","attribute_id":"5","option_id":null,"design_attribute_id":"4","design_option_id":"154","width":"5","height":"5", "repeat":"0","top":"0","left":"0","bottom":"0","right":"0","use_right":"0","use_bottom":"0","apply_to_options":"0"}] }; I need to match the right combination of values. Here's the function I currently use: function drawOption(attid, optid) { var attlayout = layout[attid]; $.each(attlayout, function(k, v) { // d_opt_id and d_opt_id are global scoped variable set elsewhere if (v.design_attribute_id == d_att_id && v.design_option_id == d_opt_id && v.attribute_id == attid && ((v.apply_to_options == 1 || (v.option_id === optid)))) { // Do stuff here } }); } The issue is that I might iterate through 10-15 layouts (unique attid's), and any given layout (attid) might have as many as 50 possibilities, which means that this loop is being run A LOT. Given the multiple criteria that have to be matched, would an AJAX call work better? (This JSON is dynamically created via PHP, so I could craft a PHP function that could possibly do this more efficently), or am I completely missing something about how to find items in a JSON object? As always, any suggestions for improving the code are welcome! EDIT: I apologize for not making this clear, but the purpose of this question is to find a way to improve the performance. The page has a lot of javascript, and this is a location where I know that performance is lower than it could be.

    Read the article

  • jQuery resizable() dynamic maxWidth option

    - by Vitaliy Isikov
    I have 3 columns that are resizable. When one is made wider, the one to it's left is made smaller. Essentially there are only 2 handles. Left col and Mid col. So when Mid col is made thinner, Right col expands accordingly. All three of them are contained with a 900px parent div, so the sum of all three is always 900. They have max and min widths set statically. My issue is that if you take the left handle and move it all the way to the right you're still able to use the right handle and expand the mid col past the edge of the parent div. I thought of a way to solve that issue by writing up a function that checks the widths of the columns and then subtracts left and right columns from the parent div width, I called it mWid. This leaves me with the number I want to set as the maxWidth for Mid col. Now the issue is that mWid is not gettings updated for here "maxWidth: mWid" Here is what the function for the right handle looks like: $(function() { $("#midResizable").resizable({ handles: 'e', containment: '#container', maxWidth: mWid, // gets set once, but doesn't update! WHY? minWidth: 195, resize: function(event, ui) { contWidth = $('#container').width() newWidth = $(this).width() leftWidth = $('#leftResizable').width() rightWidth = $('#rightResizable').width() $("#rightResizable").css("width", (contWidth-15)-(newWidth)-(leftWidth)+"px"); checkWid() } }); }); function checkWid() { rightWidth = $('#rightResizable').width() leftWidth = $('#leftResizable').width() contWidth = $('#container').width() mWid = (contWidth-15)-(rightWidth)-(leftWidth) }

    Read the article

  • Folder permission and submit button

    - by bob
    I want to create a simple installation script. Below are simple code. <ul> <?php function check_perms($path,$perm) { clearstatcache(); $configmod = substr(sprintf('%o', fileperms($path)), -4); $css = (($configmod != $perm) ? " class='error r2'" : " class='none'"); echo "<li".$css.">\n"; echo '<span style="float:left; padding-right:20px;">'.$path.'</span>'; echo '<span style="float:right; width:100px; text-align:right;"> <strong>'.$perm.'</strong></span>'; echo '<span style="float:right; padding-right:100px;"><strong>'.$configmod.'</strong></span>'; echo '<div class="clear"></div>'; echo "</li>"; } check_perms("config.php","0777"); check_perms("themes","0777"); check_perms("themes/images","0777"); check_perms("useruploads","0777"); ?> </ul> How to make if all file and folder is valid permission to 777 will appear Submit button. <input type='submit' name='submit' value='Submit' /> If there still have incorrect permission do not show the Submit button Let me know.

    Read the article

  • How do I remove the leaves of a binary tree?

    - by flopex
    I'm trying to remove all of the leaves. I know that leaves have no children, this is what I have so far. public void removeLeaves(BinaryTree n){ if (n.left == null && n.right == null){ n = null; } if (n.left != null) removeLeaves(n.left); if (n.right != null) removeLeaves(n.right); }

    Read the article

  • Inorder tree traversal in binary tree in C

    - by srk
    In the below code, I'am creating a binary tree using insert function and trying to display the inserted elements using inorder function which follows the logic of In-order traversal.When I run it, numbers are getting inserted but when I try the inorder function( input 3), the program continues for next input without displaying anything. I guess there might be a logical error.Please help me clear it. Thanks in advance... #include<stdio.h> #include<stdlib.h> int i; typedef struct ll { int data; struct ll *left; struct ll *right; } node; node *root1=NULL; // the root node void insert(node *root,int n) { if(root==NULL) //for the first(root) node { root=(node *)malloc(sizeof(node)); root->data=n; root->right=NULL; root->left=NULL; } else { if(n<(root->data)) { root->left=(node *)malloc(sizeof(node)); insert(root->left,n); } else if(n>(root->data)) { root->right=(node *)malloc(sizeof(node)); insert(root->right,n); } else { root->data=n; } } } void inorder(node *root) { if(root!=NULL) { inorder(root->left); printf("%d ",root->data); inorder(root->right); } } main() { int n,choice=1; while(choice!=0) { printf("Enter choice--- 1 for insert, 3 for inorder and 0 for exit\n"); scanf("%d",&choice); switch(choice) { case 1: printf("Enter number to be inserted\n"); scanf("%d",&n); insert(root1,n); break; case 3: inorder(root1); break; default: break; } } }

    Read the article

  • C# Custom Brush - I want two gradients chaining them together.

    - by Logan
    I am making a bar chart and I want two separate gradients for each bar. First I want a gradient to go from top to bottom solid red to transparent red. I want to paint over the top of that a gradient that goes from right to left, black to opaque. So - In the bottom left we should have; Bottom left - Alpha 0 Bottom right - Alpha 0 Top left - Alpha 255 Colour Red Top Right - Alpha 255 Colour Black So in effect I want to take a solid colour, add a left to right gradient to black then take the output of that and add a top to bottom gradient to transparency. All this and I want it to be in a single brush, is this even possible? Thanks!

    Read the article

  • C++ Beginner - 'friend' functions and << operator overloading: What is the proper way to overload an

    - by Francisco P.
    Hello, everyone! In a project I'm working on, I have a Score class, defined below in score.h. I am trying to overload it so, when a << operation is performed on it, _points + " " + _name is returned. Here's what I tried to do: ostream & Score::operator<< (ostream & os, Score right) { os << right.getPoints() << " " << right.scoreGetName(); return os; } Here are the errors returned: 1>c:\users\francisco\documents\feup\1a2s\prog\projecto3\projecto3\score.h(30) : error C2804: binary 'operator <<' has too many parameters (This error appears 4 times, actually) I managed to get it working by declaring the overload as a friend function: friend ostream & operator<< (ostream & os, Score right); And removing the Score:: from the function declaration in score.cpp (effectively not declaring it as a member). Why does this work, yet the code describe above doesn't? Thanks for your time! Below is the full score.h /////////////////////////////////////////////////////////// // Score.h // Implementation of the Class Score // Created on: 10-Mai-2010 11:43:56 // Original author: Francisco /////////////////////////////////////////////////////////// #ifndef SCORE_H_ #define SCORE_H_ #include <string> #include <iostream> #include <iostream> using std::string; using std::ostream; class Score { public: Score(string name); Score(); virtual ~Score(); void addPoints(int n); string scoreGetName() const; int getPoints() const; void scoreSetName(string name); bool operator>(const Score right) const; ostream & operator<< (ostream & os, Score right); private: string _name; int _points; }; #endif

    Read the article

  • Why is my quick sort so slow?

    - by user513075
    Hello, I am practicing writing sorting algorithms as part of some interview preparation, and I am wondering if anybody can help me spot why this quick sort is not very fast? It appears to have the correct runtime complexity, but it is slower than my merge sort by a constant factor of about 2. I would also appreciate any comments that would improve my code that don't necessarily answer the question. Thanks a lot for your help! Please don't hesitate to let me know if I have made any etiquette mistakes. This is my first question here. private class QuickSort implements Sort { @Override public int[] sortItems(int[] ts) { List<Integer> toSort = new ArrayList<Integer>(); for (int i : ts) { toSort.add(i); } toSort = partition(toSort); int[] ret = new int[ts.length]; for (int i = 0; i < toSort.size(); i++) { ret[i] = toSort.get(i); } return ret; } private List<Integer> partition(List<Integer> toSort) { if (toSort.size() <= 1) return toSort; int pivotIndex = myRandom.nextInt(toSort.size()); Integer pivot = toSort.get(pivotIndex); toSort.remove(pivotIndex); List<Integer> left = new ArrayList<Integer>(); List<Integer> right = new ArrayList<Integer>(); for (int i : toSort) { if (i > pivot) right.add(i); else left.add(i); } left = partition(left); right = partition(right); left.add(pivot); left.addAll(right); return left; } }

    Read the article

  • How to make a div extend when floating it?

    - by cjmcjm
    I'm trying to create a bar with a dynamic horizontal width. The backgrounds are transparent pngs so they can't overlap. I have one for the left side, one to repeat-x across the dynamic width middle and then another bg for the right. Here is kinda what I have so far... .bar{ width: 100%; } .left{ width: 50px; height: 50px; float: left; } .mid{ height: 50px; float: left; } .right{ width: 50px; height: 50px; float: right; } <div class="bar"> <div class="left"></div> <div class="mid"></div> <div class="right"></div> </div> So the main problem is extending the .mid all the way across to meet the right, width: 100% doesn't work. The other problems is what can I do if I have content that needs to overlap the .left and .mid divs? Set up another div and use z-index? Thanks so much!

    Read the article

  • Footer getting jammed into a column

    - by chief
    I have a three column layout. The last column on the right is: #right_column { float: left; width: 7em; border: 1px solid #ccc; padding: 5px; } My footer is going into the bottom of my right column. If I remove the right column the footer is still misplaced in the page. I presume it is something related to the float.

    Read the article

  • Footer getting jammed into a column

    - by chief
    I have a three column layout. The last column on the right is: #right_column { float: left; width: 7em; border: 1px solid #ccc; padding: 5px; } My footer is going into the bottom of my right column. If I remove the right column the footer is still misplaced in the page. I presume it is something related to the float.

    Read the article

  • Many-to-many relationship on same table with association object

    - by Nicholas Knight
    Related (for the no-association-object use case): http://stackoverflow.com/questions/1889251/sqlalchemy-many-to-many-relationship-on-a-single-table Building a many-to-many relationship is easy. Building a many-to-many relationship on the same table is almost as easy, as documented in the above question. Building a many-to-many relationship with an association object is also easy. What I can't seem to find is the right way to combine association objects and many-to-many relationships with the left and right sides being the same table. So, starting from the simple, naïve, and clearly wrong version that I've spent forever trying to massage into the right version: t_groups = Table('groups', metadata, Column('id', Integer, primary_key=True), ) t_group_groups = Table('group_groups', metadata, Column('parent_group_id', Integer, ForeignKey('groups.id'), primary_key=True, nullable=False), Column('child_group_id', Integer, ForeignKey('groups.id'), primary_key=True, nullable=False), Column('expires', DateTime), ) mapper(Group_To_Group, t_group_groups, properties={ 'parent_group':relationship(Group), 'child_group':relationship(Group), }) What's the right way to map this relationship?

    Read the article

< Previous Page | 70 71 72 73 74 75 76 77 78 79 80 81  | Next Page >