Mr.Key Posted August 26, 2013 Report Share Posted August 26, 2013 (edited) Klausies, tu tik daiļi runā, ka nelabi sametas. Latviešu sakāmvārdu kladīte lai paliek plauktā, nav ko lieki putekļus celt gaisā... Tas nenozīmē, ka nav argumentu, bet nu zb jau šī daiļrunāšana. Nāk prātā paša un daudzu citu novērojums, ka daiļrunātāju kods parasti ir tas "visinteresantākais". Ko pin iekšā kokus un šītus? Lai ilustrētu, ka tu nevis izproti problēmu un centies to vienkāršot, bet, tieši otrādi, lepojes ar to, ka viselementārākās lietas proti sarežģīt? Kas, pēc runāšanas spriežot, arī labi izdodas. Edited August 26, 2013 by Mr.Key Quote Link to comment Share on other sites More sharing options...
codez Posted August 26, 2013 Report Share Posted August 26, 2013 Nu nez, kurš te daiļrunātājs.Tu jau biji tas, kurš beztēmā piesējās par GET/POST un ajax un pēcāk manam FW, kuru tu savā dzīvē redzējis neesi.Nemaz nerunājot par to, ka pus gadu jau izmantoju scala un play2! FW.Bet atgriežoties pie tēmas.Sākumā norobežošos no variantiem, kurus normāli ar formas postu saprātīgā veidā nav iespējams izveidot:Ir, piemēram, blogs, kurā ir "vote up" poga, kuru nospiežot nobalso par rakstu un lapā parādā jauno balsu skaitu.Pat, ja pieņem, ka tā poga tiek uztaisīta kā forma un tai automātiski tiek piesaistīts events, kurš izsauc ajax.Bet ko tālāk?1) Pēc ajaxa refrešot lapu - pilnīgi nepieņemams variants mūsdienām.2) Ar ajax atsūtīt skriptu, kurš atjauno balsu skaitu un tiek automātiski izsaukts - tik un tā backendā ir jānodala formas posta atbilde no ajax atbildes (jaunais balsu skaits).3) Kaut kur pievienot vēl papildus ajax requesta callbacku - tas pats darbs, kas izmantojot pliku ajax+callback.Es savukārt šādā situācijā ignorēju tos, kuriem js ir izslēgts, jo pēc statistikas datiem ar ieslēgtu js browsē 99.8%.Ja neizmantoju nekādus MVC, MVVM klienta puses FW, tad es rakstītu šādi: $('.vote-up').on('click',function(){ var articleid=$(this).data('articleid'); $.post('/article/vote',{articelid:articleid}, function(resp){ $('.article'+articleid+' .votes').html(resp.votes); },'json'); } savukārt, kad izmantoju modeļus un mvvm, tad: $('.vote-up').on('click',function(){ Article.call('vote'); } Article.ajax.vote() pēc routera zin, kāds backend path jāizsauc, un māk automātiski apstrādāt atbildi ar Article modeļa datiem un atjaunot tam piebindotos viewus. Vai, ja izmantoju bindošanu elementam, tad: <button data-bind="click: Article.call('vote')">Vote Up</button> Quote Link to comment Share on other sites More sharing options...
ieleja Posted August 26, 2013 Report Share Posted August 26, 2013 ja paskatās kā DELFI apstrādā 'vote' komentāros, tad sajūta, ka esi atkal 1998. gadā Quote Link to comment Share on other sites More sharing options...
Mr.Key Posted August 27, 2013 Report Share Posted August 27, 2013 Joprojām nesaprotu, kāpēc forma tiek jaukta ar HTTP POST metodi? Quote Link to comment Share on other sites More sharing options...
Mr.Key Posted August 27, 2013 Report Share Posted August 27, 2013 Es runāju nevis par formu, bet to, ka forma vai AJAX tiek jaukti ar HTTP POST metodi. Es savukārt šādā situācijā ignorēju tos, kuriem js ir izslēgts, jo pēc statistikas datiem ar ieslēgtu js browsē 99.8%. Kontrolleris, acīmredzot, ir "tight-coupled" ar skatu. Problēma nav tajā, ka var ignorēt tos, kam nav JS, bet tajā, kāds tad tas kods galu galā sanāk. Quote Link to comment Share on other sites More sharing options...
codez Posted August 27, 2013 Report Share Posted August 27, 2013 (edited) Sākotnējā topika postā tiek darīts šādi: Ir html forma, kurai nospiež submit un izsauc post metodi. Servera pusē tā vienā actionā tiek gan apstrādāta/validēta, gan tiek apstrādāts un atgriezts atgriežamais skats. Es savukārt jau no paša sākuma rakstu, ka man tādas problēmas nepastāv, jo neizmantoju datu nosūtīšanu serverim ar html formas post metodi. Bet tā vietā datus sūtu ar ajax, līdz ar to to apstrādei ir viens actions, bet lapu ielādēju ar GET metodi un tai attiecīgi ir otrs actions, kurā notiek lapas skata datu sagatavošana un atgriešana. Tas, vai ajax metodē dati tiek validēti un skatā izvadīti ar formas klases palīdzību jau ir pavisam cits jautājums (Bet codeigniter, cik skatos nemaz, nav tāda formas klases, ir tikai formas helperi.). Edited August 27, 2013 by codez Quote Link to comment Share on other sites More sharing options...
daGrevis Posted August 27, 2013 Report Share Posted August 27, 2013 > Man jāsāk domāt, ar kāda līmeņa projektiem jūs ņematies, ja jums pietiek ar html formas submitu. Nepārptori mani. Tiklīdz ir nepieciešams AJAX (tavi piemēri), es to izmantoju. Tas, ko vēlos pateikt, ka ir vietas, kur AJAX nav nepieciešams. Parasta forma — tik prasti mēdz gadīties. :) Quote Link to comment Share on other sites More sharing options...
daGrevis Posted August 27, 2013 Report Share Posted August 27, 2013 Piemēram, atveram lūk mau blogu. http://dagrevis.lv/blog/138/nexus-4/#add_comment Vai man tur vajadzeja izmantot AJAX? Es teiktu, ka nē — tas ir overheads. Quote Link to comment Share on other sites More sharing options...
codez Posted August 27, 2013 Report Share Posted August 27, 2013 (edited) Piemēram, atveram lūk mau blogu. http://dagrevis.lv/blog/138/nexus-4/#add_comment Vai man tur vajadzeja izmantot AJAX? Es teiktu, ka nē — tas ir overheads. Ir nācies taisīt produktus, kuros ir raksti un komentāru pievienošana un vienmēr to esmu taisījis ar ajax. Kaut vai tā paša iemesla dēļ, ka bija iespējama arī komentāru editēšana, balsošana, flagošana, nestošana, dzēšana un tas viss tika taisīts ar klienta puses modeļiem. Man personīgi lapas pārlādēšana pēc komentāra pievienošanas nešķiet tā labākā UI/UX. P.S. Pat šijā forumā komentāra pievienošana notiek ar ajax. Edited August 27, 2013 by codez Quote Link to comment Share on other sites More sharing options...
e-remit Posted August 27, 2013 Report Share Posted August 27, 2013 P.S. Vienīgā vieta, kur izmantoju formas postu, ir failu aukšuplāde, jo vienkārši nav citu variantu. Failu augšupielādes gadījumā tu pārlādē lapu? Quote Link to comment Share on other sites More sharing options...
daGrevis Posted August 27, 2013 Report Share Posted August 27, 2013 (edited) Mans punkts paliek. Ja nevajag, tad nevajag. #YAGNI Edited August 27, 2013 by daGrevis Quote Link to comment Share on other sites More sharing options...
codez Posted August 27, 2013 Report Share Posted August 27, 2013 (edited) Failu augšupielādes gadījumā tu pārlādē lapu? Nē, izmantoju ifreimu. P.S. Protams tā ir tikai kā fallback funkcija modernākām upload metodēm. Edited August 27, 2013 by codez Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.