Vyšel Adminer 3.6.2
Školení, která pořádám
Největší změnou nové verze Admineru je jiný způsob vyvolání inline editaci hodnoty buňky. Dřív se používal dvojklik, ten se ale zároveň v prohlížečích používá pro označení slova, případně s jedním klikem navíc pro označení celého odstavce. Tuto funkci poslední dobou používám často, takže mě ukradení dvojkliku začalo pěkně štvát. Přemýšlel jsem, jak to vyřešit, a nakonec jsem zvolil změnu způsobu vyvolání této funkce na Ctrl+klik. To se sice např. ve Firefoxu taky na cosi používá, ale nikdy jsem nepochopil, na co (kolem elementu se nakreslí modrý rámeček), a tato funkce mi vždycky spíš překážela. U odkazů Ctrl+klik pořád slouží na otevření do nového panelu, protože tuto funkci intenzivně používám. Pokud je v buňce odkaz, tak lze pro jeho editaci Ctrl+kliknout do jeho marginu.
Očekávám, že to vyvolá řadu dotazů uživatelů, proto bych uvítal vaši účast ve fóru a trackeru. Někteří uživatelé nečtou ani nehledají a rovnou píšou, takže náporu jejich otázek se těžko ubráním.
Další změny jsou drobnější:
- Dříve ze při výpisu zkracovaly texty v políčkách typu
text
, nyní se zkracují i texty v typu varchar
, protože přibylo užití typů jako varchar(1024)
, který dříve ani nebyl dostupný.
- Výchozí hodnoty ve změně tabulky bylo potřeba vždy ručně zobrazit. Bylo to proto, že sloupců ve změně tabulky je hodně, takže by to mohlo vést ke zobrazení vodorovného posuvníku, který stránku obvykle znepřehledňuje. Nová verze detekuje velikost okna prohlížeče a při dostatečných rozměrech výchozí hodnotu rovnou zobrazí.
- V SQL historii se kromě času zobrazuje i datum (po najetí myši).
- Ve formulářích se používají nové typy políček z HTML5. Použil jsem number a search. Užitečné to je hlavně na mobilech, které pro čísla zobrazují uzpůsobenou klávesnici. date, time a datetime jsem nepoužil, protože hodnotu formátují, což může být matoucí. Navíc do nich v některých prohlížečích nejde hodnota přímo zapsat a musí se vybrat z kalendáře, což může zdržovat.
- Adminer by měl nyní fungovat i se zapnutou volbou
mbstring.func_overload
. To je jedna z největších hrůz, které v PHP existují.
- V MySQL od verze 5.5 je možné používat delší komentáře tabulek a sloupců.
- V PostgreSQL od verze 9.2 by měl fungovat seznam procesů. To je v reakci na jinak překvapivě pozitivní recenzi Admineru pro PostgreSQL (který oproti verzi pro MySQL nebo SQLite podstatně zaostává) na Postgres OnLine Journal.
Diskuse
Ctrl+klik vo FF sa svojho casu pouzival najme ak si chcel sikovne oznacit len niektore bunky tabuliek.
Stále (FF 17.0.1) se používá pro vícenásobný výběr – můžeš si pomocí něj označit víc částí textu a ty zkopírovat do schránky.
Martin Hořínek:
V tabulce se pomocí ctrl-mousedown-tažení označují buňky tabulky. Je to jediný způsob jak si do schránky zkopírovat např. jen jeden sloupeček tabulky a používám to často. Do toho ale Adminer nezasahuje (ctrl-click je jiná událost).
Marek:
Mne sa zdá trochu nelogické usporiadanie sql histórie.
Pokiaľ je história naozaj dlhá, potom za textarea vidím prvý, druhý dotaz, ale tie vôbec nepotrebujem keď ich mám napr. 200, potrebujem 200,199,198 tie chcem upravovať. Vždy upravujem tie posledné a keď sú na konci tak potom musím dlho točiť kolečkom myši, kým sa k nim dostanem. Mne sa zdá z pohľadu UX lepšie usporiadať sql históriu od najnovšieho sql po najstarší. Nebolo by to tak lepšie Jakub?
Asi jo, prohodil jsem to a uvidíme. Výhoda vzestupného řazení je, že když už je historie otevřená, tak můžu sjet na konec stránky a vybrat poslední příkaz. Se sestupným řazením musím hledat začátek, který může být někde uprostřed stránky. Ale pokud je historie zavřená, tak je sestupné řazení jasně lepší.
Marek:
Ešte mám tip: možno by bolo lepšie na prechodnú, dočasnú dobu 1-2-3 mesiace na dvojklik zobraziť krátky hint "Pre inline editáciu použite CTRL+Click (viz. changelog)". Myslím, že to by ušetrilo kopec dotazov do fóra.
Tom:
Korektura: ve větě "políčkách typu text, není se zkracují i texty" má asi být "nyní" místo "není"
Jakub Vrána :
ng9 už je delší dobu vystavené, to druhé mi přijde nepoužitelné, promiň.
kesspess:
Plánujete přidat CLI rozhraní?
Např. synchronizace databáze (CREATE+ALTER a INSERT+UPDATE) by skrze CLI krásně zpříjemnila automatizaci procesů...
kesspess:
Na svém vývojovém serveru jsem si zkusil vyexportovat schéma databáze (CREATE+ALTER) s tím, že výstupní SQL skript jsem uložil a zkusil spustit na produkci - a sice tak, že jsem jej předal jako vstup pro konzolí MySQL...
Bohužel se zdálo být problémovým přidávání '\n' do výstupu procedury - je to bug či feature, bylo by možné to pro budoucí verze odendat?
Děkuji!
Jakub Vrána :
Kam přesně se \n přidává a jaký problém to způsobuje? Prosím o ukázku SQL a chybovou hlášku.
Jakub Vrána :
Neplánuji. Ale mělo by jít nasimulovat HTTP požadavek a přečíst výstup z něj.
Vladimír Kocourek:
Jakube, změna na Ctrl+klik je možná pěkná, ale na OS X (Apple) se mi s tím rozumně nedaří pracovat. Ve FF se tento rychlý způsob nedá nijak vyvolat (Ctrl+klik vyvolá kontextovou nabídku, Alt+klik neudělá nic a Cmd+klik ohraničí buňku modrým rámečkem), v Safari se to přes Ctrl+klik vyvolat dá, ale je třeba použít dvojklik, což navíc vyvolá kontextovou nabídku a řádek označí jako "vybraný"... Proto se ptám, je to feature nebo bug? :)
Jakub Vrána :
Omlouvám se za nepoužitelnost. Verze 3.6.3 dovolí na Macu použít Command.
Milsa:
Takže už sa zobrazuje aj autoincrement?
Jakub Vrána :
auto_increment se nezobrazuje schválně, protože jednak jeho nastavení něco stojí a jednak by to způsobilo nežádoucí vrácení čítače po této operaci:
INSERT INTO t SET id = 20;
DELETE FROM t WHERE id = 20;
-- Teď uložím formulář se starou hodnotou 20.
Pro jeho úpravu jde použít odkaz ze seznamu tabulek v přehledu databáze.
Milsa:
Ten Ctrl+klik sa mi zdá nevhodný, pretože na dvojklik som si zvykol a bol celkom fajn. Dokonca by som bol ochotný kvôli nemu aj ostať pri staršej verzii Adminera. Napadlo ma, že na editáciu by sa mohlo použiť kliknutie na vysúvací okraj. Niečo podobné ako je pri triedení (pri nabehnutí myšou na názov stĺpca sa ukáže šípka, ktorá je inak skrytá). Podobne by mohla fungovať aj editácia bunky. Ale osobne som za to, aby tam ostal ten dvojklik, pretože je to aj náhodne objaviteľné a Ctrl+klik sa náhodne už objaviť nedá. Ak má byť Adminer bez nastavení, tak myslím, že by bolo vhodné, ak by čo najviac možností Adminera bolo ľahko odhaliteľných aj bez čítania návodu. Osobne tiež používam aplikácie bez čítania návodu, pretože, ak ma má návod zabávať, tak ostanem pri starej osvedčenej aplikácii, s ktorou som spokojný.
Jakub Vrána :
Důvody změny jsem podrobně vysvětlil. Funkce se dá objevit kliknutím na tlačítko Uložit. Vysouvací okraj dělat nechci, protože současná implementace nastaví pozici kurzoru podle místa, kam kliknu. Navíc chci mít funkci rychle po ruce, ne vždycky hledat malou ikonu, která by navíc při běžném přejíždění po tabulce (a třeba označování) akorát překážela.
CandySan:
Na dvojklik jsem velmi casto narazel a zmenu rozhodne vitam. Zvysi mi to pohodli pri vyuzivani aplikace.
Milsa:
Zle nastavený čas na serveri? Príspevok píšem o 23:23.
Milsa:
Len test na inom počítači 11.1.2013 1:07.
Milsa:
Zvláštne, teraz je to v poriadku.
honza:
Mame docela zavazny problem, pokud existuje u zaznamu sloupec typu double tak pri editaci daneho zaznamu nejde ulozit, u cisla 4444.666 hlasi chybu do te doby dokud se nesmaze hodnota za carkou ci teckou.. editor je diky tomu nepouzitelnej...
Frndopulos:
Da se to obejit - oprav si vygenerovany SQL ALTER v sql konzoli (viz. odkaz upravit).
Jakub Vrána :
Nedaří se mi to reprodukovat. Nepoužíváte náhodou místo tečky čárku? Adminer čárku nepoužívá. Jaká je přesná chybová hláška? Jaký dotaz to zkouší provést?
honza:
Ani tecka ani carka nepomuze,
kazdopadne mam carku , ale kdyz dam tecku tak to hlasi
Please enter a number ..
ano mam chrome. FF si nezapnu :)..
unavensluncem:
Ahoj, nechci byt hnidopich, ale na strankach admineru je jak forum, tak bugtracker... Nechapu proc to resite tady?
kdo netusi, tak zde:
http://www.adminer.org
Milsa:
Pretože to čo sa tu píše je k téme a navyše, ak sa máš na nejaké fórum registrovať za každú chybu, tak to sa na to radšej vykašlem. Raz som nahlasoval chybu v Lazarovi, zaregistroval som sa na stránke, potom som zistil, že bug tracker vyžaduje samostatnú registráciu. Tam to bolo takmer nad ľudské sily prejsť registračným procesom a nakoniec vysvitlo, že sa vraj nejedná o chybu, ale o vlastnosť. No taký prístup ma od nahlasovania ďalších chýb odradil. No a navyše som mal 2 nadbytočné registrácie, ktoré možno využijem raz za niekoľko rokov. Takže, keď je možnosť napísať to sem k tomuto článku, považujem to za ideálne riešenie. Ak sa to nepozdáva Jakubovi, nech sa vyjadrí.
Jakub Vrána :
Mně je to jedno, klidně to můžete psát sem.
Milsa:
Mal by som jednu prosbu. Dalo by sa do časti zmeniť tabuľku pridať tlačítko "Vyprázdniť?". Ušetrí to zopár klikov. Ide o to, že nebude treba označovať "celý výsledok", stlačiť "Zmazať" a nastaviť autoincrement na 1.
Mimochodom, vyšiel Adminer 3.6.3 (pre ostatných).
Jakub Vrána :
Tlačítko pro vyprázdnění tabulky je v přehledu databáze. Není to tak často používaná operace, abych to dával ještě někam jinam.
Jan Kadeřábek:
Osobně bych byl pro to, aby se z výpisu tabulky úplně skryly formuláře Vypsat, Vyhledat a Seřadit a pomocí JS se rozklikem zobrazily. Protože zvlášť pokud člověk pracuje na notebooku, tak víme, že je nouze o prostor na výšku. Díky tomu by se tam i vešlo tlačítko Vyprázdnit, které tam očividně chybí nejen mně.
Ze stejného důvodu - tedy zbytečné omezení prostoru na výšku - bych úplně vyhodil tu horní lištu, která tam je vlastně jen kvůli tomu, abych se mohl pohodlně odhlásit, což je všem pracujícím na localhostu jen na překážku.
Ale jinak se mi Adminer líbí a právě jej vyměňuji za onu klasiku - díky :)
Jan Kadeřábek:
Ta lišta je součástí stylu, který jsem si stáhl, takže to beru zpět :)
Richard:
Ahoj, prosím tě, měl bych na tebe jeden dotaz mimo téma Adminer. Vím, že ses docela věnoval šablonovacímu systému HtmlTmpl, existuje nějaká jeho verze, případně úprava, která by fungovala i ve verzi php 5.3 a vyšší? Na mnou používaném hostingu změnili bez varování verzi php a náhle mi stránky s tímto šablonovacím systémem nefungují. Díky moc za odpověď.
Richard:
Díky, už jsem to dal do kupy, byla tam hloupá chyba v syntaxi, jinak to normálně funguje. Na jiný šablonovací systém mám v plánu přejít, ale tohle dost spěchalo.
Milsa:
Keď vymažem databázu, tak si ju Adminer ešte dlho pamätá a zobrazuje ju v zozname, dá sa s tým niečo robiť?
Jakub Vrána :
Odstranění Adminerem ji z keše smaže. Při odstranění mimo Adminer je nutné použít odkaz Refresh na stránce se seznamem databází.
Milsa:
Vidí sa mi, že to robí, aj pri odstránení v Admineri, ale to je v podstate jedno. Je nutné to kešovať? Ušetril by sa jeden klik. Navyše, serveri mávajú prístupnú zvyčajne jednu databázu na jedno prihlasovacie meno. Veľa databáz je teda bežne na localhoste a prípadne pri prístupe admina k databázam.
Jakub Vrána :
Skutečně tam byla chyba, díky za upozornění. Opravil jsem to v Gitu.
Kešování je nutné, protože speciálně na sdílených hostinzích, kde jsou často stovky databází na jednom serveru, je to velmi pomalé. MySQL nejspíš prochází všechny databáze jednu po druhé a u každé kontroluje, jestli náhodou k něčemu nemám práva. A nic na tom nemění, že mám práva jen k jedné.
Diskuse je zrušena z důvodu spamu.