Jump to content

Thiago de Oliveira Cruz

Members
  • Content count

    4833
  • Joined

  • Last visited

  • Days Won

    2

Thiago de Oliveira Cruz last won the day on August 27 2009

Thiago de Oliveira Cruz had the most liked content!

Community Reputation

21 Levemente Bom

About Thiago de Oliveira Cruz

  • Rank
    Web Developer
  • Birthday 03/23/1985

Informações Pessoais

  • Sexo
    Masculino
  • Localização
    Rio de Janeiro, RJ - Brasil

Contato

  • Site Pessoal
    http://berseck.wordpress.com
  1. Thiago de Oliveira Cruz

    Laravel - Melhores práticas

    Antes de mais nada obrigado pela resposta Williams e feliz natal pra ti ;) Pois é como eu falei ali em cima. Eu já utilizo a parte de relacionamento fazendo hasMany e belongs to e assim vai... só dessa maneira eu conseguiria tal loop funcionando rs. Mas a minha questão é realmente performance... esse é o melhor jeito? Pq se eu não tivesse utilizando laravel eu teria que fazer um select com joins de todas as tabelas trazendo os dados nulos e checar se os mesmos são nulos ou não para poder fazer tal loop. Eu tenho pouco contato com o laravel é a primeira vez que utilizo ele num projeto mesmo, antes só utilizei para aprender a mexer nele e tals. Minha questão realmente é a melhor prática nesse caso. Se a melhor for relacional já utilizo :D Obrigado pela opinião ;) Quem mais tiver opiniões, serão bem vindas!
  2. Thiago de Oliveira Cruz

    Laravel - Melhores práticas

    Olá galera, Faz tempo que não venho aqui perguntar nada rs... Mas me surgiu uma dúvida cruel em relação a como receber os dados de um model. Eu tenho uma tabela chamada VendorMaster a qual contém todos os meus vendedores, essa tabela se relacionada com uma tabela chamada division que se relaciona com uma chamada listing e por ai vai... Ai eu tenho o seguinte código: $resp = VendorMaster::all(); foreach($resp as $key=>$vendor){ $vendor->division; foreach($vendor->division as $key=>$division) { $division->listing; foreach($division->listing as $key=>$listing){ $listing->building; $listing->building->region; $listing->building->city; $listing->building->country; $listing->building->style; } } } Bom o que esse código faz? Ele pega todos os vendedores e faz um loop por seus objetos e coleta dado dos outros models No caso 1 vendor tem muitas divisions e divisions tem muitos listings Queria saber se eu fizer dessa forma eu vou tar fazendo um loop exagerado no meu banco (eu acredito que sim...) Se seria ou não melhor criar uma função no model vendor com joins para fazer exatamente a mesma coisa. Eu acredito que se eu fizer 1 função única na qual eu faça vendor->getAllDependets ou algo do genero... se vai ser mais rápido e confiável para meu código do que fazer esse loop assim como eu fiz. Todas as sugestões são bem vindas... To querendo otimizar as transações para que isso não vire a festa do pau oco nem que leve 3 anos pro banco buscar tudo. Detalhe eu sei que o aproche atual provavelmente não é o melhor... mas ele funciona rs. Resultado final desejado é algo assim: "vendorMasterID": 714, "vendorMasterName": "asdahsiduasdagd", "vendorMasterShortName": "asdahsiduasdagd", "vendorMasterCode": "ASG", "vendorMasterPosition": 100, "vendorMasterActive": 1, "vendorMasterCreated": "2016-12-20 19:38:59", "vendorMasterAPICode": null, "division": [{ "vendorDivisionID": 1230, "vendorDivisionName": "lalalla", "vendorDivisionVendorID": 714, "vendorDivisionTypeID": 1, "vendorDivisionSetPrice": 1, "vendorDivisionCommission": 0, "vendorDivisionSetAvail": 0, "vendorDivisionSetMLOS": 0, "vendorDivisionSetCustomMLOS": 0, "vendorDivisionFRS": 0, "vendorDivisionCurrency": "", "vendorDivisionNotifyType": "S", "vendorDivisionEmail": "", "vendorDivisionFax": "", "vendorDivisionFaxAlt": "", "vendorDivisionRateCopy": 0, "vendorDivisionHideExtranet": 0, "special_best_daily_rate": 1, "special_compound_rates": 0, "set_specials": 0, "set_charges": 0, "vendorDivisionActive": 1, "vendorDivisionCreated": "2016-12-20 12:13:30", "vendorDivisionSetSimpleRates": "N", "vendorDivisionBookingURL": null, "vendorDivisionBookingPhone": null, "listing": [{ "vendorListingID": 3, "vendorListingBuildingID": 1026, "vendorListingUnitTypeID": 1, "vendorListingDivisionID": 1230, "vendorListingCheckinID": 7, "vendorListingGroupID": 0, "vendorListingExtra": "sdasda", "vendorListingExtra2": "", "vendorListingDesc": "dashiduhasio", "vendorListingOcc": 2, "vendorListingMaxOcc": 4, "vendorListingBeds": "King Bed, Queen Bed", "vendorListingBath": 2, "vendorListingSqft": 100, "vendorListingUnit": 0, "vendorListingStatus": -1, "vendorListingDecre": 0, "vendorListingFRS": "", "vendorListingUnitNum": "", "vendorListingBlockID": 0, "vendorListingBlockDays": 0, "vendorListingPackage": 0, "vendorListingSecretSaver": 0, "vendorListingMapListingID": 0, "vendorListingPrepaid": 0, "vendorListingActive": 1, "vendorListingCreated": "2016-12-20 22:38:58", "vendorListingHousekeepingStatus": 1, "building": { "buildingID": 1026, "buildingName": "El Salvador", "buildingDesc": "", "buildingTypeID": 1, "buildingAddress": "Test", "buildingRegionID": 201, "buildingCityID": "91", "buildingStateID": "664", "buildingCountryID": "38", "buildingZipCode": "V5N 2P9", "buildingCreated": "2016-12-20 20:04:29", "region": { "regionID": 201, "regionName": "Downtown", "regionAbr": "", "regionDesc": "", "regionCityID": 91, "regionCreated": "2016-12-01 00:10:18" }, "city": { "cityID": 91, "cityStateID": 664, "cityName": "Vancouver", "cityDesc": "", "cityCreatedBy": 0, "cityCreated": "2016-12-01 00:17:08" }, "country": { "countryID": 38, "countryAbr": "CA", "countryName": "Canada", "countryCurrencyID": 0 }, "style": { "buildingTypeD": 1, "buildingTypeName": "Hotel", "buildingTypeActive": 1 } } }] }] Abraços
  3. Thiago de Oliveira Cruz

    Jogo dos Números

  4. Thiago de Oliveira Cruz

    Jogo dos Números

    Motta posto no mesmo segundo q eu oia a maldade XD
  5. Thiago de Oliveira Cruz

    [Resolvido] erro ao importar uma musica

    Só um adendo, para poder explicar o que aconteceu com você. Você provavelmente usa windows... Windows tem uma mania de colocar .nome em arquivos que não necessariamente tem aquele formato. Existem alguns tipos de musica que não são mp3, e sim são wav... só que o windows por algum motivo lê como mp3, deve ser algum tipo de conversor que as pessoas usam para colocar a musica na internet ou algo assim que causa essa doidera. E ai o que acontece é isso que aconteceu com você... como o flash só lê mp3, mp4 etc... e tem alguns problemas com wav e outros formatos... se por acaso existir algum erro na formação ou na criação do arquivo (ou conversão)... não necessáriamente impeça o computador de ler... mas o flash não consegue ler. Tenho um exemplo disso em uma das minhas musicas do coldplay que se encontra em meu computador... ele se diz MP3, mas tem falhas de conversão... e com isso o flash não abre... e não é só ele... depois descobri que tbm o meu tocador mp3 tbm não reconhece o formato e não abre. E o windows continua dizendo que é MP3 =) Ou seja o problema na verdade ta no windows que engana nós pobre coitados... e o que temos que fazer... é descobrir como passar por isso. A sua solução foi uma boa saida... outro caminho seria baixar a mesma musica de outro lugar ;) Ou copiar de um cd Abraços
  6. Thiago de Oliveira Cruz

    root em as3

    Vou postar aqui outra solução plausivel Crie um arquivo normal onde vai ser seu root E coloque o seguinte código nele: var mc:MovieClip = new MovieClip(); addChild(mc); var loader:Loader = new Loader(); loader.load(new URLRequest('popup.swf')); addChild(loader); Assim você cria um novo arquivo onde vai se chamar popup Ai você cria um botao fechar com instancia de fecha E coloca o seguinte código no frame: fecha.addEventListener(MouseEvent.CLICK, onClick); var _root = parent.parent; function onClick(e:Event){ _root.removeChildAt(2); } Se você reparar eu tive que puxar o parent do parent para encontrar o root... Pois por algum motivo não é encontravel o root diretamente... quando você digita root ou MovieClip(root) Você esta ainda sim indicando o root no clip carregado... e não o root onde ele foi carregado. E essa foi uma das varias soluções que eu já encontrei. Para resolver esse tipo de problema. Abraços
  7. Thiago de Oliveira Cruz

    root em as3

    Poderia nos mostrar o código que você ta usando? Pois assim poderiamos lhe ajudar de uma maneira melhor Abraços
  8. Thiago de Oliveira Cruz

    root em as3

    http://forum.imasters.com.br/index.php?/topic/355687-root/ Movendo de AS2 para AS3
  9. Chame as váriaveis TODAS que você vai usar antes de qualquer coisa Declara tudo que você vai usar... Como você ta usando variáveis que são dentro de botões não tem .text .text é só para campos de texto instanciados se for uma variavel ela vai receber o dado normal exemplo var resposta:String = new String(); botao.onPress = function(){ resposta = "Eu sou uma STRING"; } verifica.onPress = function(){ trace(resposta); //output Eu sou uma STRING } Abraços
  10. Velho você mesmo respondeu =( pergunta1.text="B"; if(pergunta1.text==resposta1) esqueceu do .text ;) Abraços
  11. Não cara você deve fazer assim: //Declaro as variáveis que vou usar var resposta1; var resposta2; var resposta3; //Declaro o obj de carregar var obj= new LoadVars(); obj.load("gabarito.txt"); obj.load("perguntas.txt"); //aqui carrega as variveis nos respectivos Dynamic Text obj.onLoad = function(ok){ if(ok){ resposta1=(obj.resposta1); resposta2=(obj.resposta2); resposta3=(obj.resposta3); }else{ trace("Erro ao carregar"); } trace(resposta1+","+resposta2+","+resposta3);// Aqui se ele conseguir carregar o txt vai dar os valores das respostas }; Você deve declarar as variáveis das respostas fora do carregamento. Sugiro que você faça isso com um array..... para fácilitar sua vida :S Abraços
  12. Sim é ActionScript 2... e você havia postado em ActionScript 3 Quanto ao if else... No seu botão de verificar, instancie ele como verificar e faça assim: var objLoadVars = new LoadVars(); objLoadVars.load("gabarito.txt"); objLoadVars.load("perguntas.txt"); //aqui carrega as variveis nos respectivos Dynamic Text objLoadVars.onLoad = function(){ RESPOSTA1=(objLoadVars.RESPOSTA1); RESPOSTA2=(objLoadVars.RESPOSTA2); RESPOSTA3=(objLoadVars.RESPOSTA3); //daqui para baixo existem mais! até 30 questões }; verificar.onPress = function(){ if(pergunta1.text == resposta1){ trace("acertou") } else { trace("errou"); } } Não coloque ação nenhuma no botão... remova todas as actions que você inseriu no botão e apenas coloque uma instancia nele... e esse código Pois onde está o verifica.onPress é a mesma ação que colocar on(release). O campo de texto dinamico deveria ser um input text correto? para que a pessoa responda lá. Se ela respondeu corretamente e você instanciou o campo de texto como pergunta1... o resultado do if tem qe dar acertou... Se não vai dar errou. Abraços
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.