Ojo, <span style="color: rgb(204, 0, 0);">644</span><span style="color: rgb(204, 0, 0);"> </span><span style="color: rgb(204, 0, 0);"></span>se traduce como:<br>          6      4     4<br><div style="margin-left: 40px;"><span style="font-family: tahoma,sans-serif;">110  100  100</span><br style="font-family: tahoma,sans-serif;">
<span style="font-family: tahoma,sans-serif;">rwx  rwx  rwx     (read, write, execute)</span><br><span style="font-family: tahoma,sans-serif;">prop grp  otros</span><br><span style="font-family: tahoma,sans-serif;"></span></div>
<span style="font-family: tahoma,sans-serif;">O sea que propietario es el único con acceso de escritura.<br><br></span><span style="font-family: tahoma,sans-serif;">Tengo entendido que en rainbow cada ejecución se hace con un usuario distinto, por lo tanto en la segunda ejecución ya no es el propietario y por eso no lo puede modificar. Sin embargo rainbow asegura que para una misma aplicación el grupo es el mismo, por lo tanto agregando permisos de escritura al grupo estarías hecho:<br>
<br></span><span style="color: rgb(204, 0, 0);">os.chmod(os.path.join(directorio_base, &#39;Radios.db&#39;), 664)</span><br><br>Espero que esto te sea de ayuda.<br><br>Saludos,<br>Pablo<br><br><div class="gmail_quote">2010/3/9 Flavio Danesse <span dir="ltr">&lt;<a href="mailto:fdanesse@gmail.com">fdanesse@gmail.com</a>&gt;</span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">No, hay un error en lo que dije en el mail anterior, no es correcto, estoy haciendo pruebas ya les cuento que saco en claro.<br>
<br><br><br><br><div class="gmail_quote">El 9 de marzo de 2010 16:05, Flavio Danesse <span dir="ltr">&lt;<a href="mailto:fdanesse@gmail.com" target="_blank">fdanesse@gmail.com</a>&gt;</span> escribió:<div><div></div><div class="h5">
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hola gabriel y pablo, gracias por responder y tan rapido.<br><br>El tema es así:<br><br>La idea del código es que la primera vez que se ejecute la actividad, busque la base de datos y si no la encuentra la crea ya que las radios están definidas en el código. Las siguientes veces que se ejecute la actividad la base sólo se carga desde ese directorio.<br>


<br>La primera vez que ejecuto el código, se crea la base y puedo agregar elementos en ella, pero la proxima vez que ejecute el codigo, accedo a la base pero si intento escribir en ella me dice que es solo lectura.<br><br>


Para probar el tema de los permisos intenté:<br><span style="color: rgb(204, 0, 0);">os.chmod(os.path.join(directorio_base, &#39;Radios.db&#39;), 644)</span><br>No funcionó (probé diferentes permisos, incluso todos)<br><br>


No es lo mismo:<br><span style="color: rgb(153, 0, 0);">os.path.join(os.environ[&#39;SUGAR_ACTIVITY_ROOT&#39;],&#39;data/&#39;)</span><br>que:<div><br><span style="color: rgb(153, 0, 0);">os.path.join(activity.get_activity_root(), &#39;data/&#39;)</span><br>


<br></div>Son diferentes directorios, sin embargo, en la práctica no hay diferencia, pasa lo mismo.<br><br>Subí el paquete .xo que tengo hasta el momento a: <a href="http://sites.google.com/site/sugaractivities/ceibalradio-1-0" target="_blank">http://sites.google.com/site/sugaractivities/ceibalradio-1-0</a><br>


(para agregar una radio hay que hacer click con boton derecho sobre cualquier radio de las existentes)<br><br><br><br><br><br><br><br><div class="gmail_quote">El 9 de marzo de 2010 11:41, Gabriel Eirea <span dir="ltr">&lt;<a href="mailto:geirea@gmail.com" target="_blank">geirea@gmail.com</a>&gt;</span> escribió:<div>

<div></div><div><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Flavio:<br>
<br>
No sé si tendrá algo que ver, pero para acceder al directorio donde<br>
uno puede escribir en vez de usar activity.get_activity_root() yo uso<br>
la variable de entorno SUGAR_ACTIVITY_ROOT, así:<br>
<br>
os.path.join(os.environ[&#39;SUGAR_ACTIVITY_ROOT&#39;],&#39;data&#39;)<br>
<br>
También habría que ver como dice Pablo con qué permisos se crea el<br>
archivo, podés mandar el código de la clase ManejodeBasedeDatos?<br>
<br>
Saludos,<br>
<br>
Gabriel<br>
<br>
<br>
<br>
<br>
El día 8 de marzo de 2010 23:57, Pablo Moleri &lt;<a href="mailto:pmoleri@gmail.com" target="_blank">pmoleri@gmail.com</a>&gt; escribió:<br>
<div><div></div><div>&gt; Flavio, no me queda claro si no podés &quot;acceder&quot; o &quot;modificar&quot; la base de<br>
&gt; datos. En cualquiera de los casos sería bueno que miraras con que permisos<br>
&gt; queda creado el archivo &quot;Radios.db&quot; (ls -l), es necesario que los permisos<br>
&gt; del grupo permitan lectura y escritura.<br>
&gt;<br>
&gt; Saludos,<br>
&gt; Pablo<br>
&gt;<br>
&gt; 2010/3/8 Flavio Danesse &lt;<a href="mailto:fdanesse@gmail.com" target="_blank">fdanesse@gmail.com</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; Tengo una base de datos que la actividad crea así:<br>
&gt;&gt;<br>
&gt;&gt; # Directorio para crear la base de datos<br>
&gt;&gt; directorio_base = os.path.join(activity.get_activity_root(), &#39;data/&#39;)<br>
&gt;&gt; mi_base = os.path.join(directorio_base + &quot;Radios.db&quot;)<br>
&gt;&gt;<br>
&gt;&gt; # Si el directorio no existe, crearlo<br>
&gt;&gt; if not os.path.exists(directorio_base):<br>
&gt;&gt;     os.mkdir(directorio_base)<br>
&gt;&gt;<br>
&gt;&gt; # Si la base de datos no existe, crearla<br>
&gt;&gt; if not os.path.exists(mi_base):<br>
&gt;&gt;     BasedeDatos = ManejodeBasedeDatos(mi_base)<br>
&gt;&gt;     BasedeDatos.CrearBasededatos()<br>
&gt;&gt;     BasedeDatos.Llenar_Base()<br>
&gt;&gt;<br>
&gt;&gt; Luego, en la actividad tengo código que permite agregar datos a la base y<br>
&gt;&gt; actualizarla, sin embargo solo funciona la primera vez que ejecuto la<br>
&gt;&gt; actividad.<br>
&gt;&gt;<br>
&gt;&gt; Es decir:<br>
&gt;&gt;<br>
&gt;&gt; Instalo la actividad.<br>
&gt;&gt; La ejecuto por primera vez, con lo cual se crea la base.<br>
&gt;&gt; Agrego 1 registro y todo funciona perfecto, los datos se almacenan y se<br>
&gt;&gt; conservan luego de reiniciar.<br>
&gt;&gt;<br>
&gt;&gt; Sin embargo, en instancias sucesivas de la actividad no puedo modificar la<br>
&gt;&gt; base de datos.<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Olpc-uruguay mailing list<br>
&gt;&gt; <a href="mailto:Olpc-uruguay@lists.laptop.org" target="_blank">Olpc-uruguay@lists.laptop.org</a><br>
&gt;&gt; <a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Olpc-uruguay mailing list<br>
&gt; <a href="mailto:Olpc-uruguay@lists.laptop.org" target="_blank">Olpc-uruguay@lists.laptop.org</a><br>
&gt; <a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
&gt;<br>
&gt;<br>
_______________________________________________<br>
Olpc-uruguay mailing list<br>
<a href="mailto:Olpc-uruguay@lists.laptop.org" target="_blank">Olpc-uruguay@lists.laptop.org</a><br>
<a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
</div></div></blockquote></div></div></div><br>
</blockquote></div></div></div><br>
<br>_______________________________________________<br>
Olpc-uruguay mailing list<br>
<a href="mailto:Olpc-uruguay@lists.laptop.org">Olpc-uruguay@lists.laptop.org</a><br>
<a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
<br></blockquote></div><br>