ballerupgis / qlr-datasource-rename

Ændre datasource i qlr filer til ny host
0 stars 2 forks source link

gør ROOTDIR til en command line parameter #5

Closed JosefAssad closed 8 years ago

JosefAssad commented 8 years ago

Kan gøres mange forskellige måder, en oplagt mulighed er Argparse. En anden er docopt.

danielarnason commented 8 years ago

Bare så jeg forstår det rigtigt, er det så man kan angive parameteren i command line? F.eks. til at køre scriptet ville man i terminalen skrive; _python3 qlrreplace.py 'stien-til-ROOTDIR'

baffioso commented 8 years ago

@JosefAssad god ide root-parameter, så der ikke skal rettes i koden hver gang. New Host name burde også laves til command line parameter. @danielarnason du kan merge, når du har testet, da jeg nu har inviteret dig til projektet med skriverettigheder

danielarnason commented 8 years ago

@JosefAssad @baffioso Jeg har lavet en ny branch, der hedder command-line. I den har jeg tilføjet sys modulet, som gør det muligt at specificere argumenter, der bliver læst af scriptet. Er det noget i den stil? Til at køre scriptet, skal man skrive python3 qlr_replace.py <ROOTDIR> <NEWHOST>

Hvad er egentlig forskellen mellem at bruge sys.argv i stedet for argparse eller docopt?

baffioso commented 8 years ago

Fedt! Glæder mig til at teste

JosefAssad commented 8 years ago

@danielarnason yep det fungerer, nice! Vi plejer at sige "make it run then make it run well" så det er et godt skridt fremad. (faktisk er det "make it run then make it run fast" men jeg tillader mig lidt fleksibilitet)

argparse/docopt opnår samme formål, men de gør det muligt at bygge mere komplekse command line parametre. Det gør det også muligt at validere command line input og skrive korte vejledningsbeskeder vha. for eksempel et "--help" switch.

Jeg har en skummel plan om at gøre qlr-datasource-rename til en mere generisk qlr batch editing applikation så det ville være fedt hvis vi understøtter mere komplekse command line brugergrænseflader. :)

Jeg tror godt du kan merge denne branch på master. Jeg har et par issues jeg har tænkt mig at oprette som skulle bane vejen for nogle fine forbedringer i kodebasen.

danielarnason commented 8 years ago

@JosefAssad Fedt. Jeg merger med master :)

Jeg har læst lidt mere på argparse dokumentationen, og tror, at jeg forstår den nu. Jeg prøver at erstatte sys med argparse.