From c80394a2a9c04821ee82fedf824728898181402a Mon Sep 17 00:00:00 2001 From: jpic Date: Fri, 9 Oct 2015 09:24:18 +0200 Subject: [PATCH] Attempt to reproduce, but I have no field at all in the admin so far. --- .../example_apps/basic/admin.py | 2 ++ .../basic/autocomplete_light_registry.py | 2 +- .../example_apps/basic/models.py | 32 ++++++++++++++++++ test_project/db.sqlite | Bin 171008 -> 200704 bytes test_project/dev.db | Bin 75776 -> 0 bytes 5 files changed, 35 insertions(+), 1 deletion(-) delete mode 100644 test_project/dev.db diff --git a/autocomplete_light/example_apps/basic/admin.py b/autocomplete_light/example_apps/basic/admin.py index 460a4d5a9..b771ba57a 100644 --- a/autocomplete_light/example_apps/basic/admin.py +++ b/autocomplete_light/example_apps/basic/admin.py @@ -35,3 +35,5 @@ 'form': ModelForm, 'inlines': [Inline]}) admin.site.register(model, ModelAdmin) + +admin.site.register(MtmLeftModel) diff --git a/autocomplete_light/example_apps/basic/autocomplete_light_registry.py b/autocomplete_light/example_apps/basic/autocomplete_light_registry.py index 34ab01b71..476800df1 100644 --- a/autocomplete_light/example_apps/basic/autocomplete_light_registry.py +++ b/autocomplete_light/example_apps/basic/autocomplete_light_registry.py @@ -2,7 +2,7 @@ from .models import * -models = [OtoModel, FkModel, MtmModel, GfkModel] +models = [OtoModel, FkModel, MtmModel, GfkModel, MtmLeftModel] try: import genericm2m diff --git a/autocomplete_light/example_apps/basic/models.py b/autocomplete_light/example_apps/basic/models.py index 7f8e07d2b..224f531b8 100644 --- a/autocomplete_light/example_apps/basic/models.py +++ b/autocomplete_light/example_apps/basic/models.py @@ -114,3 +114,35 @@ class FullModel(models.Model): def __str__(self): return self.name + + +@python_2_unicode_compatible +class MtmLeftModel(models.Model): + name = models.CharField(max_length=128) + relation = models.ManyToManyField('MtmRightModel', + through='MtmMiddleModel') + + noise = models.ForeignKey('FkModel', null=True, blank=True) + + for_inline = models.ForeignKey('self', null=True, blank=True, + related_name='inline') + + def __str__(self): + return self.name + + +class MtmMiddleModel(models.Model): + left = models.ForeignKey('MtmLeftModel', related_name='left_of') + right = models.ForeignKey('MtmRightModel', related_name='right_of') + for_inline = models.ForeignKey('self', null=True, blank=True, + related_name='reverse_for_inline') + + +@python_2_unicode_compatible +class MtmRightModel(models.Model): + name = models.CharField(max_length=128) + for_inline = models.ForeignKey('self', null=True, blank=True, + related_name='reverse_for_inline') + + def __str__(self): + return self.name diff --git a/test_project/db.sqlite b/test_project/db.sqlite index 954d0d1dd8a10d9851c60829e1c9efef127c9443..bbd0c72de4ccc41896600948a68b06456be5e27a 100644 GIT binary patch delta 7653 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 Z@c$uZzu&RAd<*{WVZ`&DEs5st{{V5KBa8q5 delta 2595 zcmZuz3viRi5x(6$>6dKDmMqJ%F~TNBWgNe8jSVhg3>Y^L1~-AEOgeFdC2WBu+mg(? zfD%ZWN7L92S=u2yN?WE)rv#i@q)ec^J58FQ512xeFl4}PLR*FuY-*FC_e-P(QvIX- z@4nr=-P_&U`#0>cY}lXjYOcLm2(kP2AJqG&-Nls(EEz~Ks97#`DJph#cT7&-N=!ZU zeR`f^w1&F+?3O=a;g(pA;=dMiDEd;&s_3SeQPFkF6B3Td3fMkQw7Qg5iGy~*nf20~43?JZw(&|_x4^#T?cT#_oG zxAP50t~=9AWv1ppG~kakwFO#QqfKhEN?DSfP3L;~%h zC!VqNTR;}m6EMPB4J$O{kq$M0sa<0!!O8&f1xUBriZBy-opvF9p8d~;7r;^ zKY*367@mhWm4O?E$#P~M=z+=M&{;5po7awj$50@rxuMs)Ju9u%8(H2S^+(3#$!X36 zWYFh1+&Bso`NI*I!ewgY%94|v5b-y6g;fZfltMHR^#`3?_iymX0$JzetDi$IzjY4e zdWTKAav<2H_Tvpl1CeM(x^%gcK#M;V_S+rOl?RCpFX?J)3%2|GZ8oQL6(q4_5E5v5 zhIF};Xv>mi2`Ft03Pyto$T|kKN87U#n8hw#xwma36;t`pC}i;~qfp^UC?v{9RgXUu z4X@I8=Lk&V&QWleTcy*PsEV$LKTK)T=}OF6!tGrhm?51L&3egy)A));}#2s)!m>3!le+o4neqk={i zaD~)SkpyP9UP&aL6e{fn>XiX=R6-v#JzMYBTvb)T@7S@7*PTEUe{%pc`P~zk%C-z# z$Uh&1@jPP?%^b|YD_UWN&*-Yp<6Bd~9iRI%I0$jM5l1M~Y}OAi(N#soP8y{lx~e?* zg!tMXu%!SE=#1?&puoS8YnxL-5u|&4zNS0!Q`G-HNQ*-gi-g!gaSD+K%EhN*5wiU! zFbnJ3_<%-pv}nT;qwC2kKBSR{|6oUrx7aa@7S%7)`Q?255@yQCv*D$jHh@!jyhe$A zMeg3sqr7wg3fVRQCZ0QpPxH}1bQvRUT`l(&^5H?u(+V2`_t^RSNzBqZ8d~pxQJL4; z8(Qvx=P4LN);@UqmcwDCB4HHs1%+`l8lXd55WV*C-=J7}m@gQqmd{Bl;F%g#P|VWF zxyNw^tmeJLD*hkX(a39#V<~j-n>xPg4m|Y)R-(0?Up%H5EAL=@b_`3=5#qWNin06- z#!jUn=^fFaYG5|j2a`eDrBS9q@4X3l-+su>p^%VJCh!w{9FC~LF7-UEo+gzq*)ihQOHc-{a@_#t^1LBc5C<;7J;i^!T=ovY zfB3Zlm6b=j!5sf!5T?pLxdUysYC%!_7q-Gj@GWs%R4Xqgrp8iYR?SschOsj4K86mS zcMT$7;ltP9B}mm@6L{Hm2pUroQk;Jrom@JkByL@Y#e^|4uXEr8whhBL-a4eZs2Z90 zH%3xR>5hhmK~rKTU95)hA661u9qJsPci==BGsU!|jn{`^X`0>z5H<=t0vq9XDv8U% z^h~WZ%-d+FhnbqGt3Kne;9sw3E=q?(9>mFSW5q44ON;&>&_OF=p!=mH&~ zT}tF_;tSR2h@Y;;BHO-9DYJ~?WxdqnxDswagLoNi;;a~_)Wh*{hhYHq$fVsBnRP=d z7X8X?es>5e`Wq4RNeCAkI?!W*YA}k^;#VRj7IfE5-~}BRTVGaU5KvK@t{T2S>c6v- z%=U)zlW2ajzvL&{cv*2$p}AGv_+L>-qIW427Ab|Is(TxizP#6$=DSNazPMA}ocgE8 z{o)X7H(@_-UV+Qh?EoII>aFg}8^#l#@dX@1D{d0S!Y8l|AH$iP8O72P`dr2Il=?{7 zLvPTF6s4!Ak!DgU3m`3~O8D!t{5r!30Sm%kq?_7&=GH2fD{ CtMp<3 diff --git a/test_project/dev.db b/test_project/dev.db deleted file mode 100644 index eec2cfa91de924903e68798c989c1b42c8d2d8a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75776 zcmeHQdvF`adB43q00j6FDM2TZB6$Q!K_`kL9t0m!6`PhIg_1~Fq+XPhq96fM5D9`J zAnOrNTTrS0a68GwGo93bG}E-1j@zbFxAD|;*2mGkm+l`8@c2w-%i3)EkDz-JDqTYiFj{}cQ8NQE7={O#n zctiXI0s?^=N1%5QHLz!wj7k9C#f^;`fAFUG2?PWJwSvI0HU&gLT_U-h%q3%M$>n%1 znaIptP0r_bHR48^@9Jx%(V`s!0f9h81n^UU82=Sv5)1-?nnXZc|7)^aMWX})n?gWb z|2GAbU=j$_Bm(04Uz6P`8YK|e6awPy$ZfAE3g+{d;FWZ z-UM7~e?Pc0lZ($SC*#+1S7NKlwR9?*O=VVWyYkWL==iy)c5eKs(^1W5tMzI7JR17> zQVE}yTFE6BlWW@4nRD9I`O~Mhr>7?-$ERntQ_PIvn@4Zgc|&n43h%TD2p1Pbp3{Hnt(WMQx@i7ttO0 z28T=S?gsgJ8`uSao#jBS7D(#>HflP)G^6Dnos56bB!MPyRDM#E$KBq>#&)-Re06Rqu@H)7uf#)<;a(K? z2?Tn_hGs&eiPdM91FKK>-kLZzvve$e^Xbs-g|mwjGtvIFb2l%|-(HzMH9d1Fkh}ft z#j{fvuB0L-mX3r1!SFyZFc2Eif`LPku|t8OgQ3t!BofRev$@=px!l2A&c-x~_zn&Q z#v(%@eEkRTCldN6egXl3z()iD7xcRE2?AgL73pP3dRe|MzYJf0T$_LAWW7u6>H^Q3 z!lpQwL87L3qp3^~sM?s%YCN00ky%6O02bvBhDM9R{LArdF1DOmOs)8|1e#8fOQn4zkOu?QZI9&B)`(XPsoEF;Q_QEFaqYILdL zFt~G+gb5Q@<134qm^m*}g4AL?CQ5KrdvsWlEs?VE#aCBj%kjCS3Eom{X_UU%n1$yi z3K~&V(2zrc*JzVdoeh`6utZa1!4kw)JpNn3_ayi(d;`7?KMU93&%$x&m47UMOMXrM zJUS~}mXFAq3=xy~ZAk<=S{+ii+O?R@r8RQ=%*C^*dAv*Z+FKk_m)fzouw<@XSTZWN zkxHv5mux1LnOw#siS~%(?k0!Sp|)GJQl(lWa;U@P5WW({&~eUv>TE!oI|@E=2CAX6 zp44-)_6@YN~yIokP;Q{dA_BW=xe^Os*u?QuFCh+A@Q# z-9<1!*8&aYeb;Wq6Y10n+9NxyPKV@Gy;+oyCI4~Jj^^CAceH1dBwNk?(7*c>ht${C zL(gj(&LY!oyqPs^w?L%Y>%}KWd=12Zx62Mm^{OO2gK1==10bxu-Gx*It|{!{`~Oz? zMF~C!zYBi||5koS{%!e1`E~gX_!Ss~UqEMsldw+y5$uFRTk_x+PH!;;wkv8Eu%4k> zTNSl~(&!LvDUjHh-&P>8Vcy)LsO^Rzm229mbaVkW-ud~a(W`WH6v&jh!9rzr>Mc}e z%Ckf1Xy+QJ0{0%J+Yic|IqHbNmh*+HNm0FkpDLV0r|lHs*rW9I0MnVkd{$5z6|Wbt z69Q~fyeiovrvkZE@pikdD8iCW5o++3;lgczW{c?Cmor zE-y{qj^3V3Ur5j1o)2F>H?=f%?m}wn*zC~cvDJ}@<*_S?OVgQ4;S0AfUpl!kn?8Ou z9=dS-^3jRmiS+cf*^7~txm%H|bD>CJKE0eeojx8+oLIch`93~*{oKW|rOOv@9-X~7 zwRZVpWN9LGBXuc+`K~M^E=?`ZFORKaeUq00G)NdkaY9p&a40-HH0*)@g5rO#N$@qa zA$|e@fxuQkpchVpN+&10v`=rP#u)Lxmn7*W@N?kT<ShGvjb+B#;_|SVH z8p)u0+e?OdXeE#E(EZp_@>U`8HDr#r6~FGwWKaw%?$dI~n>l+3FL`q{wU&(GAXmvy z*WqnW^^9I2OvB8u2o2rekw4JlQhR#9dY3uqg>MfT0BCb(>DHqf-t>}h{}s13kwIZW z6wu^>&*C?debxY&`2}c?eka&UUW9z!Yj&61;Nn;*^_lOhB^~G0)q0Nul9`nlj>MMe z2^t>7kI9>SR}ZryA58B;7QKee-xxQ)a9kqFW>aIt6Nnr5kfN?p>RNIYnPpuND$xbB zp$p6LMW2>U$CsDUi|g9;m27Ge1zhb1D0)$SWic5`qi{of5g}tah>iDu0YvdX5#4)e zr#4|oAn-5|XakDW)04azPp>W~56)-OrcLAd|C-cZ25b z?neIV&!`rN914dHg(K+wpg?FS+!8#V$>8xX*8h5NJs~s;1RiGujOYIsB!S1c_@-(`K8EXP*uQ{`%WZNurjmPvG#AN{DhQV-9$0%c*$Q^u!q{ei>+fEg2^d*JZ;T`S1?%=)b<3bRNsE#b_SP zzTal;EPHjeon#G4lzL_+DSI3qFd^^J^GCccb#M@@>sGH>PLKP=2<>J3X7vxpaXxu> ze5X@AKUglfROEe(yb_GxvxqT=_lWENqdVgX%L0K%jer>ckGcnheSyHELqN>`eRS9h z%L0K%jexlRKk6P3_5}iu4gqofe{|Rj%L0K%jR3y>JET*RbP6QFSLI7EcGn)QtE#b* z+n6<)%H~ZNaeNen<$=kfnvOE@)gs1f1FZ{dnRJY6F$IC`uS?}Jn_=T~GmG@1DVjDF zXs+hWu8mf1D-VY$V9R}Hk?hWV`)(4v&L>O5U8Gj40B*IIZV+|%=<7-w@$Sxu)jKrH zkjxI`-Z4UV8ShyAee{kdKIjyh;-y;e`fWazVPWs$p$tQ3yGsoQL4MH&1MANM4vgX} z2Lxxhr!{LW*%9OYKau~x>vNtE6bNi-1jO_ImhL{`yg=Zd5D?@4p5PP00)Z`!03QFl zq~j9&HvBUD1sI1%;BNV+@;{>$Kt3aXQa&Jiz+#|gsy&`=I30QvN zT@L995IGuO(TuN*Yu2?>N`8Ahta2e^l9FABPF=Drw=%HPA&r4SY$={d*d-9j`nI6% zbx0A=Z*q(;)Z(JwLuYHX=sP$ob*I2eJz=ap+a1y%=wnV4_^^G(q@h)J`azG$G@iKU zq*n2^h8EtT9MmG=pvLfa8(Mv*4|Fg?q#E168+*~>J3*kE^&3mdIG71zcQ0Cphw?Ei zl#dxQcJZP-)EkT}orCBg<_wNOv?$ME5Hwk&kI-bD8ikrQtxPe9R_UPv)U-u_+BXU4 zXxSdxUDyW;H+ICts-YEptnlIqdyqPTw>7kij}>0RL9OELHnet+30_i-&EO3mTDoVz z=wm~tW~`w>4UiolTFQs=(DoTT)CAetgI4tMgD%#E1_L%iw))X3J|k{&I8!TyrFp2O z0-+zR??aiXxk4Q^Ss?VGb$^0xa(G}U3l-RQVGoagRhpIHci^k=m*E0D47bVuDSu7= zRe4p8%5C6(!8gE5;8`#UdZqu9-jaSt`ZQv%{L=?{S5jwD{K8l!Y8!Qy1vGjNT82}B z54*~k^Z~AqB8A>zH1su7q}WT1`T@>LO&3_HX~x>qZ!ulq!=@RNf4@TtTSgjN)T)VE zra>*g&Kap;&PeT2#_oOiz#-=b+&P>JTcs@he$?4uz%vuI$vwZoQ{=J-;8a6Rg z)10}l51$bH{D|auH)8XgP4DF>Qo#8NVGYba^;PfTtjs)XQUkM2S$ljIzzZsgZKkiA z>!YT*kM-0vKP)uPN=+A7scFXA(`7MT;KQaFlitboQPcdG@KDq2u+Td=D>YqUrKTBc z&mN2E0v|TbnEdVh=%J<=h;C|`!sBn_jMOk^q;@G|_wJI1nHyWBEI9u+EPqXcAHpBQ z|A9Y%{|^5Z{u6u)z6t*t{w4fV_{Z=S_`C2+XeF>;gD=8gfzQKVgtuW1uD~mB4t@e& zfKQ_p!j8d@!BH532jE_)!8W)9Ho-b5%OA?`%l|EZU;du_UHNVK@8vh-Zy;mhClI(# z2sj`Bt;3{@ka7r@En!lINEyWCwg4#yNqG>L%>$%7K+1kxHti>+PRf0_Z1j_IFDd(Q z+0aYM9#Z;nS>H`cjg(!u^mLN4gOq!4>24=w8!30=vTheCRZ{N6rOQjo9i-fjOJ^%7 zTS&PLmyTvqHj%Osmr4UE>q+UsC3KUrj+8E3%1%-`NU12$4InOL2;FXc{dY=u{tsvY zzb{Y8e+SRsr>?0|On{t`|VF>xIx z--?*9iv|(pEKxS8)9@|2k#D2n#K^+f=v-;v_HD{HrlXQ?g&RpcvqsNLT`u*B0g&%5 zIEZhi>8H?Q!{MR8{BU@lxMr%*OE_h!=5i)?Ow|}9vP)b5n&CoEX%{R#XHv4if(uNp zybGp&+Slz;XU0K(!sY|9SHLXG8&&|s&eC7bFFPaGW%tm|Xn{+-|5N2@O0WwAY6t-_ z{%fc+MNd^vRZ8IedDFL*xbn6XmBAgZzUhJ`em);GKMeKN}QfCe^me_)q2fIHOkG` z$>(_=d&OW$7mDR9PVj0=mMCA>XSfg~J!ZGW)2#N2Km`|AQn$Pd^o>70Nl(xF_qxl9l=q<%jss&2@KT@ul8y2I zA$tF>yb4hx5D*B|9s>CNKV$rVAi)o6uYICL0s(pArPo}1jP8S z`7Ra>6bO_>K#c#g(1;3wK+PjyJ6_O(!WW zz9b}_q8&>_LXmi6bktrkY<0?B&E*Vd?A17B#TFAaChrCNjkN4DRyWwxc)osXY-}Vl znv9IhbCpFbBV}AGV&uAPP8Km@cZ*hA)$@Y~44*Gn@;QtqM2-dnk@7x|ZrW$2YcoFE zSA)$r44_qV2SGk!^_Z=5%5$mQQC2fn#y?iiC2el8dW>LEI#pc%E1vBHgFv8W5fJ0Q zX1i82OdwDZ0Wtn7LL?Xj0yT?(82>ffwW47HfrHj9!x=(FFAJ$Y3q1cp~2#CdX7hRsvrutWR!)X0;%0Fb2f;|L*#9CIkfnHGqJ4{;z>f6ipBa z+$93y`Ts6~6Ji2^8bCl?|7)NVMH2)9cZqFCta=#1v0OJbUNaWnC}KdOe#Su|%fudifNiz~?lN(t~i!zmZzGu|%^OOmqBH0+5OIXIwiOu=Rv{dxdJ{?iq z|MPR5*boSO&Y6+y*KVqfDRl~2PHNcL@G~-&BSddkwx!eZ6m6j zOb}683<{G%lvdJs7ZzF0prt5sYqz$Ombj=GqwX-MRFqM@ssaW<9Tq2dOv!|CYq_&c z0TEC~by%uYJpMbu3zB?N{)Bu@eqMe_{sT1j-a<^O$egfVDZ-74mUqr&2oppfUxN8X`wp3z4U!AYt4_#hLwpL8ao1I!MH~VR1$}NRDQ5cAyG(lTqQO zqLkQX5UCYPY$xhGSRH$Dau2cVp~8&XVNj_wqjnPUdb2lOgt6Y{wq{UmP3$J(4Q4ES zgt38&vnR+NgG$92wU=~7BN1m{^pRd`Wb%x>*B~B&Ex~_;ub@$W8HS+~?TVj3U~41LKkSf3 zz`)V?ie?=18a`2K=?vN{I?MJ)II}Tq%*^&t+&AQqg20b8qhV*}w44L>Ia&{KR%V{FGV64__XHi%An4=9IUljj&J+QzkG7pR-F|)-`Twnbm<#U(0{4P| x82|Tzo{$v?Y;6R@_}|+7C%hL3+zSGD`~&pyFY*1adqGji3Iw(u0uV~>{|72eJRtx8