22 May, 2011

Cakephp - kæmper med ACL

En ACL driller helt vildt. Kan man fjerne den? Valgte at slette databaserne; men så gik cake bake helt i sort. Genoprettede databaserne, men uden held. Cake er gået i sort. Hvordan kommer man videre?

Og igen ... tjah ... den givne tutorial fra CakePHP virkede heller ikke. De må altså gøre noget ved den dokumentation! Hver gang jeg har prøvet disse tutorials, så er der noget som ikke lige virker.

Jeg har ikke tal på hvor mange gange der har været nødvendigt at begynde helt forfra...  Som regel er det lettere at slette alt, for at finde en fejl i de lange koder er helt umuligt. Især når det er uklart, hvor man skal lede.

Suk ... CakePHP er ikke a "piece of cake". Og det irriterer mig grænseløst at læse, hvor "piece of cake" det her at ... [skriv noget] ... hvorefter den givne opskrift får cake til at gå i sort.

Nå: det gode er, at jeg efterhånden kan sætte sagerne op på 10 min... 

21 May, 2011

Jammen - CakePHP er jo hamrende smart...

Efter en frustrerende stejl indlæringskurve begynder visionen bag CakaPHP så småt at dæmre. Jeg bager og bager - og det er meget let at sætte sagerne op. Nogen gange tager jeg mig selv i at tænke:


- "Jammen, det er jo hamrende smart, det her..."

Og sådan kan pendulet svinge fra den ene side til den anden side. Jeg skal love for at "cake bake" kan fyre kodelinjer af: modeller, controllere, views, CRUDs og hvad ved jeg. Lige nu eksperimenterer jeg med at tildele brugergrupper rettigheder. Og så begynder det jo at ligne noget seriøst.

Cake bake ... AHA!

Efter mange, mange forsøg på at få "cake bake" til at fungere begyndte jeg at analysere fejlmeddelelserne. Tilsyneladende var stien forkert. Cake kunne ikke finde de rette filer.


PHP Fatal error:  ConnectionManager::getDataSource - Non-existent data source default in /web/petj/public_html/cake/cake/libs/model/connection_manager.php on line 102

Fatal error: ConnectionManager::getDataSource - Non-existent data source default in /web/petj/public_html/cake/cake/libs/model/connection_manager.php on line 102


Det viste sig, at man naturligvis skal stå i ~/cake/app/ og fra denne mappe eksekveres cake bake all så.
De ku de godt ha skrevet... (muligvis har jeg overset en detalje; men lad os bare se bort fra denne umulighed).

Men nu har jeg endelig fået åbnet "bageriet".

19 May, 2011

Exit Cake Bake

Jeg følger et kursus i webapplikationsudvikling, hvor vi er blevet introduceret til frameworket CakePHP, der skulle hjælpe os til at programmere større projekter hurtigt.

Det er særdeles vanskeligt at finde kodeeksempler, der virker, når man arbejder med CakePHP. Efterhånden har jeg brugt mange, mange timer på at få noget til at virke med Cake, der burde være dødsimpelt.

Lige nu prøver jeg at lave en log in ... hvilket er relativt simpelt med rå PHP / MySQL. Men med CakePHP er det en ørkenvandring af mislykkede forsøg.

Men dokumentationen er næsten altid mangelfuld - og den ORM, som skulle kunne bage koden er fyldt med fejl. CakePHP har sine skønheder; men så sandelig også alvorlige mangler.

Jeg mener stadig, at ideen med et framework er at lave kode hurtigt og let.

Cake bake
Det er så let at bage med cake bake, kan man læse; men min skærm bliver fyldt med fejlmeddelelser. Jeg har prøvet flere installationer, servere og databaser med samme resultat. Jeg har ellers set mange gøre det på nettet; men når jeg gentager det samme - med copy paste af koder og databaser, så virker det ikke. Der er altid lige et eller andet, der uheldigvis ikke virker. Det bliver man altså træt af.

Man kan spilde meget tid på et framework, og tid har jeg ikke. Så nu vil jeg kun bruge de dele der faktisk virker - altså virker for mig:

Ind til videre har jeg droppet følgende i CakePHP:
  • Auth - loginfunktioner
  • Cake bake
Men ret skal være ret, der er også gode ting:
  • Nemt at bruge data fra databaser
  • Scaffolding - hvor man i skitseform kan sætte tingene op.
    Evangelisternes Lyserøde Rosende Ord
    Artikler om CakePHP er næsten altid i det lyserøde felt. Alt beskrives som "easy" - og det er som en rød klud mod en tyr, når man har siddet i timevis uden at skidtet virker - eller med forklaringer, der er uforståelige opremsninger af 3-bogstavsforkortelser: ACO, ACL, ORM...

    Nej, jeg kan altså ikke tilslutte mig CakePHPs "evangelister". CakePHP er alt andet end "easy" ... og slet ikke når skærmen konstant fyldes af "PHP fatal error...." mig her og "PHP fatal error" mig der...

    Exit Cake Bake
    Efter at ha skrevet ovenstående tænkte jeg: "Det kan da ikke passe, at bake ikke virker. Jeg prøver lige igen..." Og det var spild af tid (igen). Selvfølgelig virkede bake heller ikke denne gang! For at være helt ærlig - nu gider jeg ikke bruge mere tid på "cake bake ..."

      Nydeligt design i Kulturministeriets nyhedsmail

      For nogen tid siden anmeldte jeg layout og typografi i Kulturministeriets nyhedsbrev. Det så forfærdeligt ud; men nu har de åbenbart arbejdet med sagen. Om anmeldelsen i "Pers Computercyprianus" har betydet noget i den forbindelse véd jeg ikke; men nu kan man ligefrem læse teksten. (De grønne farvetoner er dog fra mit Linux Mint tapet).

      11 May, 2011

      Noter og markeringer i PDF-filer

      Som underviser har jeg ofte brug for at kunne fremhæve områder i PDF-filer. Det kan man i linux med Xournal. Filen åbnes og editeres. Områder markeres med transparent farve - og meget mere.

      Der er dog et lille problem: Xournal kan ikke rotere PDF-filens sider. Det er upraktisk, hvis et dokument ligger på den forkerte led.

      En slags løsning er at gå ind i skærmindstillingerne. Her kan man rotere skærmbilledet. Museoplevelsen bliver ret alternativ, eftersom pilen flytter sig på en ny måde; men prøv at rotere musen - fysisk - på samme måde som skærmbilledet. Så kan den bruges til noget.

      Under arbejdet bruger jeg fuld skærm - og skjuler Gnomes menuer. Herefter er det kun Xournals menuer, der vender lidt alternativt.

      Gad vide, om der findes et lille program, hvor man kan rotere PDF-filen? Der findes en række PDF-editorer, så måske kan et sådant program opdrives.

      GIMP kan fx åbne PDF-filer; men her skal man editere side for side. Det bliver upraktisk ved længere dokumenter. (Måske kan man skrive et python plugin, der vender en masse sider automagisk).

      Det er naturligvis lidt primitivt; men det virker.

      03 May, 2011

      CakePHP - over åen efter vand?

      Når man arbejder med et framework kan selv de mest simple handlinger blive komplekse. Måske kommer gevinsten på lang sigt; men på den korte banehalvdel er det altså bøvlet at sætte sig ind i dette framework.

      Det er lidt som at gå over åen efter vand, når man skal pløje gennem lange tekster, der forklarer noget, der kunne være ordnet med en simpel SQL-sætning. Fx prøver jeg at sortere indlæg i en blog, så det nyeste vises først. Selv includes kræver mystiske og magiske metamanipulationer...

      Det burde være piece of cake; men den slags kræver virkelig en mental indsats, hvis man bruger CakePHP.

      Og løsningen på at sortere blogindlæg. Det er naturligvis ren kagemagi at skrive:

      # $posts = Set::sort($posts, '{n}.Posts.id', 'desc');

      Omvendt, når frameworkets idé dæmrer, så giver CakePHP en række redskaber, der dels giver systematik til udviklingen af webapplikationer og som dels gør det nemt at strukturere produktionen. Adgangen til databaser, relationer mellem tabeller og meget andet kan ordnes relativt enkelt.

      Men det kræver naturligvis, at man kan sin "kagebog".

      02 May, 2011

      One.com nede ... igen

      Den senere tid har der været mange problemer med One.com. Lige nu kan jeg ikke se nogen af de sites, som jeg passer på det hotel. Selv http://one.com er nede.

      Efter nogle timer fungerede alt igen.

      26 April, 2011

      Netværket i det lille hjem 2011

      Der kommer stadig flere enheder på vores LAN
      For et par år siden tegnede jeg et diagram af netværket i hjemmet. I dag er billedet ikke blevet mindre komplekst. En trådløs router forbinder:
      • 5 computere
      • 1 tablet iPad
      • 4 telefoner (der også er på mobilmaster, 3G og hvad ved jeg)
      • 1 trådløs printer
      • 1 TV
       TV og computere er nært forbundne. Et Sony Bravia TV har udviklet sig til et mediecenter - via flimmeren kan vi se vores billeder, høre al musik og se podcasts / videoklip.

      Efterhånden er det kun serveren, printeren, flimmeren og routeren der har faste IP-adresser. DHCP tager sig af resten.

      CakePHP problem løst

      CakePHPs tutorial blog.

      Gennemførte en tutorial med en CakePHP blog. I dag var samtlige indlæg slettet, man kan ikke oprette nye indlæg og CakePHP viser denne fejl: "Error: The requested address '/' was not found on this server." På nettet har flere haft lignende problemer.
      Besluttede den noget drastiske kur: slet alt og upload igen. Få database og CakePHP til at spile sammen. Konfigurere CakePHP igen. Derefter tjekkedes modulerne for fejl. Eftersom "add" modulet ikke virkede, så var det logisk at prøve at rette netop denne fil. Og så virkede sagerne ellers.

      Fejlen ligger i filen, der skal tilføje nye poster; men filen virkede altså i går. En copy / paste løste problemet. Mystisk...

      Nu tager jeg en backup. Det gør jeg, igå.

        One.com

        Lige nu er adgangen til multimusen.dk ekstremt sløv. Der skulle være problemer med en eller anden server hos One.com.De øvrige sites, som jeg administrerer på One.com er ok. Tilsyneladende er visse data forsvundet. Indtastninger til en database forsvinder ... forhåbentligt pga. lag...

        19 April, 2011

        Ubuntu: kør medieserver ved boot

        Sådan startes en vilkårlig medieserver automatisk ved boot (de kunne såmænd også være et andet program):

        Skriv en bashfil, der starter medieserveren Serviio i stil med dette:


        --- klip ---
        #!/bin/bash
        # dette script starter medieserverne saa de koerer som en service
        # 19-04-2011

        # Serviio
        /usr/share/serviio-0.5.2/bin/serviio.sh &
        --- slut ---

        Gem serviio filen i /etc/init.d/

        Afprøv om sagerne virker:

        # service serviio start &

        Hvis alt virker tilfredsstillende, så tilføj filen til rc.d ved hjælp af  update-rc.d:

        # update-rc.d serviio defaults

        (NB: alle kommandoer udføres som root i dette tilfælde).

        Du kan herefter tjekke om servicen kører. Fra iPad burde Serviio være synlig som medieserver - og det bliver den også fra Sony Bravia TV.

        18 April, 2011

        Sony Bravia og Serviio

        Medieserveren Serviio fungerer sammen med Sony Bravia. Både billeder, video, podcasts og musik fungerer. Serviio er programmeret i Java, og virker derfor under Windows, OSX samt Linux. Lige nu synger Tom Waits fra mit fjernsyn; men musikken ligger på serveren. Det er jo skønt - ikke mindst fordi jeg nu kan se "So ein Ding" og de andre yndlingspodcasts, som Gpodder er så venlig at hente...

        iPad og MediaTomb - virker... næsten...

        Med MediaTomb er det nemt at streame til en iPad. Installer programmet "SmartStor Fusion Stream". Start Mediatomb. Så snart MediaTomb kører på nettet bliver den synlig som medieserver i SmartStor Fusion.

        Læs mere her...

        Video kan man vist ikke streame ad denne kanal; men lyd virker.... næsten. Lyden spiller et par sekunder og holder op igen. Sådan bliver det ved. Serveren crasher i en uendelighed. Kort sagt: det virker næsten.

        Måske er der tale om nogle settings, der skal justeres?

        Redigerede settingsfilen, gav lidt mere cache. Nu kan mp3 filer streames. Mick Jagger synger: "You can't allways get what you want...." fra min iPad. Meget passende; men video er stadig for tungt. Men nu er der da i det mindste hul igennem til musikken. 

        08 April, 2011

        Skat - tast selv

        Nu gemmer skat sig også bag en telefonsvarer. Ironisk nok henvender jeg mig fordi tast selv ikke registrerer indtastninger. Nu lytter jeg til en besked hvert 15. sekund om at jeg kan bruge hjemmesiden med tast-selv....

        05 April, 2011

        Læg 7 minutter til på et regneark

        Formularen kan se sådan ud:
        • a1 + time(00;10;00)
        Resultatet kan se sådan ud, hvis man kopierer formularen i de efterfølgende celler:


        09:00:00
        09:07:00
        09:14:00
        09:21:00
        09:28:00
        09:35:00
         

        01 April, 2011

        Nåeh ja - chmod 755 eller 777

        Chmod 755 eller 777 og chown root:users ... nåeh ja, det havde jeg da nær glemt.

        30 March, 2011

        Cyprianus

        Pers Computer Cyprianus er min samling af opskrifter på, hvordan problemer med computere, iPads, mobiltelefoner etc. er blevet løst. Her finder du hacks, tips, tricks og fiduser. Engang skrev jeg den slags på en brugt konvolut. Når den var fyldt ud, så røg den ud.

        Og så var løsningen sådan set glemt. Derfor begyndte jeg at skrive denne blog. For bloggen bliver ikke væk.

        En Cyprianus er en troldmands magiske bog. Cyprianus blev ifølge legenden skrevet med troldmandens eget blod, og var derfor en potent talisman. På landet havde "kloge folk, der kunne mere end deres fadervor" en Cyprianus, hvor de samlede magiske opskrifter. Legenden sagde også, at troldmanden måtte sælge Cyprianus inden sin død. Hvis det ikke skete, så tog Fanden hans sjæl...

        I Danmark indledes Cyprianus ofte med denne formaning: "Selv om Moses kendte alle ægypternes hemmeligheder, så misbrugte han dem ikke. Gør Du ligeså."

        Så galt går det nok ikke med denne Computer Cyprianus. Måske er du heldig, og finder løsningen på et problem. Måske ender du bare med at være forvirret på et højere niveau. Hvem ved?
        Dette indlæg er skrevet, fordi mange har søgt på ordet Cyprianus på denne blog. Men ind til nu er ordet ikke blevet forklaret. Se også Wikipedias artikel om Cyprianus.

        23 March, 2011

        Joomla mod_search problem

        mod_search vil max vise 50 resultater, når man søger; men jeg har brug for at se samtlige resultater af en søgning. Jeg har prøvet at editere filer i mod_search samt /administrator/plugins/search - ind til videre uden held. Ideer?

        I Joomlas forum kan man læse, at filerne i /plugins kan rettes til. Her findes en mappe med settings; men selv om man retter samtlige limit 50 linjer i disse filer, så er resultatet stadig max 50 resultater. Noget tyder altså på, at Joomla definerer søgningen et andet sted.

        Løsning
        > Administrator > Extensions > Plugin Manager > Search
         Sæt "Search Limit" til 9999.
        QED,

        22 March, 2011

        Inden for en uge har de fleste besøgende brugt Firefox på bloggen

        I denne uge overhaler Firefox Internet Explorer på ugeoversigten. Fremgangen er tydelig.

        Samlet set er det dog stadig Internet Explorer der fører stort med 45% af alle hits, mod Firefox der tegner sig for 35% af alle hits på bloggen. Der er stadig et stykke vej, før end Internet Explorer detroniseres.

        Læg også mærke til de mobile enheder, der så småt gør sig bemærket. Måske er det de første tegn på at vi skal til at designe til mindre skærme... igen.

        20 March, 2011

        iPad - og piletaster

        Hvor er piletasterne påen iPad?
        Svar: de er der ikke.
        Og derfor er det ikke nemt at redigere og skrive på en iPad.

        Af samme grund gider jeg ikke at prøve på at rette stavefejlen lidt højere oppe i detteindlæg....

        Og nej, jeg vil ikke betale 12 $ for en App, der gør noget, som producenten burde rette kvit og frit!