require

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

require

lairess
Olá pessoal, to com uma dúvida aqui:

local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...

inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).

já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
valeu!!!

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

Tomás Guisasola
Oi

Qual é o conteúdo desse arquivo "saidaDadosArquivo"?

Abraço,
Tomás

Em seg, 8 de abr de 2019 às 11:33, lairess <[hidden email]> escreveu:

>
> Olá pessoal, to com uma dúvida aqui:
>
> local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...
>
> inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).
>
> já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
> agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
> valeu!!!
>
> --
> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
> Acesse esse grupo em https://groups.google.com/group/lua-br.
> Para mais opções, acesse https://groups.google.com/d/optout.

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Visite este grupo em https://groups.google.com/group/lua-br.
Para obter mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

Eric Santos
In reply to this post by lairess
Olá!

Pela forma que você está usando, você está meio que criando um objeto "saidaDadosArquivo". No fim desse saidaDadosArquivo, você deu return com a tabela contendo essa função f_inseri()?

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

lairess
In reply to this post by Tomás Guisasola
Script que recebe informação(nome e idade) do usuario e cria um arquivo! Em outro modulo, eu ate consigo acessar o arquivo.txt criado e imprimir na tela assim:

--arq = leitor.load("cadastro.txt")
print(arq)

mas ja quando tento acessar a função de inserir dados, da o erro mencionado!



Em segunda-feira, 8 de abril de 2019 11:37:44 UTC-3, Tomás Guisasola escreveu:
Oi

Qual é o conteúdo desse arquivo "saidaDadosArquivo"?

Abraço,
Tomás

Em seg, 8 de abr de 2019 às 11:33, lairess <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="obe1wdavCQAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">lai...@...> escreveu:

>
> Olá pessoal, to com uma dúvida aqui:
>
> local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...
>
> inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).
>
> já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
> agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
> valeu!!!
>
> --
> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para <a href="javascript:" target="_blank" gdf-obfuscated-mailto="obe1wdavCQAJ" rel="nofollow" onmousedown="this.href=&#39;javascript:&#39;;return true;" onclick="this.href=&#39;javascript:&#39;;return true;">lua...@googlegroups.com.
> Acesse esse grupo em <a href="https://groups.google.com/group/lua-br" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/group/lua-br&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/group/lua-br&#39;;return true;">https://groups.google.com/group/lua-br.
> Para mais opções, acesse <a href="https://groups.google.com/d/optout" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;" onclick="this.href=&#39;https://groups.google.com/d/optout&#39;;return true;">https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

Tomás Guisasola
Oi

Desculpe, mas não entendi a sua resposta.  Só queria saber o conteúdo
do arquivo.  O que tem dentro dele?

A função require espera carregar um arquivo que termine retornando um
valor, que em geral é uma tabela.  Esta tabela deve representar o
módulo que você está carregando, então ela deve conter os valores que
o módulo exporta.  Se o arquivo não retorna nada, a função require vai
retornar um booleano.  Isso é o comportamento normal dela.

Parece que você está fazendo mal uso dela, OU está com um arquivo inapropriado.

Abraço,
Tomás

Em seg, 8 de abr de 2019 às 12:01, lairess <[hidden email]> escreveu:

>
> Script que recebe informação(nome e idade) do usuario e cria um arquivo! Em outro modulo, eu ate consigo acessar o arquivo.txt criado e imprimir na tela assim:
>
> --arq = leitor.load("cadastro.txt")
> print(arq)
>
> mas ja quando tento acessar a função de inserir dados, da o erro mencionado!
>
>
>
> Em segunda-feira, 8 de abril de 2019 11:37:44 UTC-3, Tomás Guisasola escreveu:
>>
>> Oi
>>
>> Qual é o conteúdo desse arquivo "saidaDadosArquivo"?
>>
>> Abraço,
>> Tomás
>>
>> Em seg, 8 de abr de 2019 às 11:33, lairess <[hidden email]> escreveu:
>> >
>> > Olá pessoal, to com uma dúvida aqui:
>> >
>> > local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...
>> >
>> > inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).
>> >
>> > já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
>> > agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
>> > valeu!!!
>> >
>> > --
>> > Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
>> > Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
>> > Acesse esse grupo em https://groups.google.com/group/lua-br.
>> > Para mais opções, acesse https://groups.google.com/d/optout.
>
> --
> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
> Acesse esse grupo em https://groups.google.com/group/lua-br.
> Para mais opções, acesse https://groups.google.com/d/optout.

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Visite este grupo em https://groups.google.com/group/lua-br.
Para obter mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

lairess
In reply to this post by Eric Santos
sim, eu retornei a tabela com essa função!!

Em segunda-feira, 8 de abril de 2019 11:47:10 UTC-3, Eric Santos escreveu:
Olá!

Pela forma que você está usando, você está meio que criando um objeto "saidaDadosArquivo". No fim desse saidaDadosArquivo, você deu return com a tabela contendo essa função f_inseri()?

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

Denis Dos Santos Silva
In reply to this post by lairess
só pra acalar

require -> é uma função que lê um "arquivo.{lua, luac, so, dll}" (código-fonte, chunk) e executa retornando.

-- arquivo: modulo1.lua
local _M = {};
function _M.hello( nome )
print("ola " .. nome);
end

return _M;

--- arquivo: run.lua
local modulo1 = require("modulo1")
modulo1.hello("mundo")

--- se voce tá lendo um arquivo "txt"
melhor usar io.read() pra isso




Em segunda-feira, 8 de abril de 2019 11:33:56 UTC-3, lairess escreveu:
Olá pessoal, to com uma dúvida aqui:

local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...

inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).

já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
valeu!!!

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

lairess
sim, é um arquivo txt. Vou ver aqui se consigo resolver!! valeu!

Em segunda-feira, 8 de abril de 2019 12:11:34 UTC-3, Denis Dos Santos Silva escreveu:
só pra acalar

require -> é uma função que lê um "arquivo.{lua, luac, so, dll}" (código-fonte, chunk) e executa retornando.

-- arquivo: modulo1.lua
local _M = {};
function _M.hello( nome )
print("ola " .. nome);
end

return _M;

--- arquivo: run.lua
local modulo1 = require("modulo1")
modulo1.hello("mundo")

--- se voce tá lendo um arquivo "txt"
melhor usar io.read() pra isso




Em segunda-feira, 8 de abril de 2019 11:33:56 UTC-3, lairess escreveu:
Olá pessoal, to com uma dúvida aqui:

local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...

inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).

já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
valeu!!!

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

Denis Dos Santos Silva
In reply to this post by lairess
----------------------------------------------
- le um nome de um arquivo txt -
----------------------------------------------


$echo "lua" > dados.txt

-- arquivo: dados.txt 
lua

-- arquivo: run.lua
local ok, err, data;
ok, err = pcall(function()
  local fd = io.open("dados.txt", "r");
  assert(fd);
 
  -- *a = lê todo o arquivo
  -- *l = lê somente uma linha (por vez)
  data = io.read("*l");
  fd:close();
end);

if (not ok) then
  print("!!", err);
  os.exit(1)
end


print( "nome", data );
-- <<EOF>>









Em segunda-feira, 8 de abril de 2019 11:33:56 UTC-3, lairess escreveu:
Olá pessoal, to com uma dúvida aqui:

local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...

inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).

já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
valeu!!!

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: require

lairess
In reply to this post by Denis Dos Santos Silva
O meu deu certo assim...
cadastro = {} 
     
        function cadastro.f_inserir()--Função dentro da table cadastro.
         print("\t\tInsira seu nome e sua idade!\n")
         print("\t\tOu digite fim para finalizar!\n")
            io.output("cadastro.txt", wra)
            for i, v in pairs(cadastro) do                  
                    print("\t\t\t*****CADASTROS*****")
                    print("----------------------------------------------------------")
                    print("Nome:")
                    cadastro[v] = io.read()
                    io.write(cadastro[v]," \n")
                    if cadastro[v] == "fim" then
                      quit()
                      print("Cadastro finalizado pelo usuário!\n\n")
                    end                                  
                    print("----------------------------------------------------------\n\n")           
            end
        end
         table.insert(cadastro, v)
         return cadastro

eu tava colocando tudo dentro da table cadastro, sou bem noob mesmo!!! kkkk


Em segunda-feira, 8 de abril de 2019 12:11:34 UTC-3, Denis Dos Santos Silva escreveu:
só pra acalar

require -> é uma função que lê um "arquivo.{lua, luac, so, dll}" (código-fonte, chunk) e executa retornando.

-- arquivo: modulo1.lua
local _M = {};
function _M.hello( nome )
print("ola " .. nome);
end

return _M;

--- arquivo: run.lua
local modulo1 = require("modulo1")
modulo1.hello("mundo")

--- se voce tá lendo um arquivo "txt"
melhor usar io.read() pra isso




Em segunda-feira, 8 de abril de 2019 11:33:56 UTC-3, lairess escreveu:
Olá pessoal, to com uma dúvida aqui:

local inseri = require("saidaDadosArquivo") -- to fazendo a requisição desse arquivo.lua, colocando ele na variavel local inseri...

inseri.f_inserir() -- e quando chamo a função f_inseri do arquivo requerido aqui, obtenho o seguinte erro: attempt to index local 'inseri' (a boolean value).

já procurei nos manuais mas não consegui achar nada, que posso fazer aqui?
agradeço qualquer ajuda. Não conheço muito da linguagem mas vez ou outra to estudando a.
valeu!!!

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.