AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / coding / 问题

All perguntas(coding)

Martin Hope
JhonRM
Asked: 2025-04-15 10:36:12 +0800 CST

Resolver dinamicamente o tipo de propriedade aninhada com base em literal de string

  • 6

Estou procurando uma maneira de resolver dinamicamente um tipo de propriedade em tempo de compilação com base em uma string literal. Tentei usar uniões discriminadas e, embora funcione na maioria das vezes, as mensagens de erro do TypeScript são um tanto confusas e enganosas.

Aqui está um exemplo simplificado:

export type EntityTypes = "Cow" | "Dog";

export interface EntityCowDetails { milkQuantity: number, herdId: number }

export interface EntityDogDetails { barkVoiceId: number }

export type EntityDetails<T extends EntityTypes> =
  T extends "Cow"
    ? EntityCowDetails
    : T extends "Dog"
      ? EntityDogDetails
      : never;

export interface EntityEntry<T extends EntityTypes> {
  primaryKey: string;
  displayText: string;
  details: EntityDetails<T>;
}

export interface Entity<T extends EntityTypes> {
  entityType: T;
  entities: EntityEntry<T>[];
}

export type DogEntity = Entity<"Dog">;
export type CowEntity = Entity<"Cow">;

export interface ServerResponse {
  entitiesContainer: (
    | DogEntity
    | CowEntity
  )[];
}

Agora imagine que eu tenho um objeto como este:

const response: ServerResponse = {
  entitiesContainer: [
    {
      entityType: "Dog",
      entities: [
        {
          primaryKey: "23",
          displayText: "Luna",
          details: {
            barkVoiceId: 2,
          },
        },
      ],
    },
  ],
};

Isso funciona bem. Mas se eu acidentalmente fornecer um campo de outra entidade (por exemplo, milkQuantityda vaca), recebo um erro confuso:

details: {
  milkQuantity: 10,
}

TypeScript reclama:

Property 'herdId' is missing in type '{ milkQuantity: number; }' but required in type 'EntityCowDetails'

Então, se eu tentar "consertar" adicionando todos os campos específicos da vaca, recebo outro erro:

Object literal may only specify known properties, and 'milkQuantity' does not exist in type 'EntityDogDetails'

essa última mensagem deve ser sempre o erro, independentemente de eu adicionar propriedades de outras entidades?


Existe uma maneira melhor de estruturar isso para que os tipos sejam resolvidos de forma mais intuitiva e essas mensagens de erro enganosas sejam evitadas?

Além disso, embora eu entenda que isso pode ser possível usando herança em vez desse mapeamento condicional, essa é uma abordagem melhor neste caso?

typescript
  • 1 respostas
  • 36 Views
Martin Hope
ProjectKV
Asked: 2025-04-15 10:23:28 +0800 CST

Como obter a largura exata do texto a partir do estouro horizontal: wrap?

  • 5

No Unity, tentei obter um tamanho de componente de texto, não TMP, que tenha estouro horizontal: wrap e estouro vertical: overflow.

Quando o texto está fora da largura do retângulo e uma nova linha é adicionada, text.preferredHeight funciona corretamente. Ele retorna a altura da linha.

Mas text.preferredWidth retorna um valor errado. Funciona como se o estouro horizontal fosse apenas um estouro, não importa o que seja.

Quero obter um valor em que as linhas quebradas sejam aplicadas.

chat.text = 'looooooooooooooooooooooong word'; //text is wrapped. Extra line is created
Debug.Log(chat.perferredWidth); // returns wrong value. Extra line is not applied
Debug.Log(chat.perferredHeight); // returns correct value.
unity-game-engine
  • 1 respostas
  • 33 Views
Martin Hope
OptimusPrime
Asked: 2025-04-15 09:59:41 +0800 CST

Qual é a maneira correta de executar 4D FFT no Cuda implementando 1D FFT em cada dimensão usando a API cufftPlanMany

  • 6

O Cuda não possui nenhuma implementação direta de FFT 4D. Portanto, quero decompor uma FFT 4D em 4 FFTs 1D nas dimensões X, Y, Z e W. Entendo que a API cufftPlanMany é mais adequada para isso, pois elimina o uso de loops for e, portanto, é muito mais rápida.

Escrevi um programa exatamente para isso. No entanto, o resultado final do 4D FFT não corresponde à implementação do 4D FFTW.

Abaixo estão as duas implementações usando as bibliotecas FFTW e Cuda, respectivamente. Escolhi cuidadosamente o lote, o passo e o dist para a função cufftPlanMany. No entanto, não entendi o que estou fazendo errado. Qualquer ajuda será bem-vinda.

Implementação FFTW 4D

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <fftw3.h>

#define PRINT_FLAG 1
#define NPRINTS 5  // print size

void printf_fftw_cmplx_array(fftw_complex *complex_array, unsigned int size) {
    for (unsigned int i = 0; i < NPRINTS; ++i) {
        printf("  (%2.4f, %2.4fi)\n", complex_array[i][0], complex_array[i][1]);
    }
    printf("...\n");
    for (unsigned int i = size - NPRINTS; i < size; ++i) {
        printf("  (%2.4f, %2.4fi)\n", complex_array[i][0], complex_array[i][1]);
    }
}

float run_test_fftw_4d(unsigned int nx, unsigned int ny, unsigned int nz, unsigned int nw) {
    srand(2025);

    // Declaration
    fftw_complex *complex_data;
    fftw_plan plan;

    unsigned int element_size = nx * ny * nz * nw;
    size_t size = sizeof(fftw_complex) * element_size;

    clock_t start, stop;
    float elapsed_time;

    // Allocate memory for input and output arrays
    complex_data = (fftw_complex *)fftw_malloc(size);

    // Initialize input complex signal
    for (unsigned int i = 0; i < element_size; ++i) {
        complex_data[i][0] = rand() / (float)RAND_MAX;
        complex_data[i][1] = 0;
    }

    // Print input stuff
    if (PRINT_FLAG) {
        printf("Complex data...\n");
        printf_fftw_cmplx_array(complex_data, element_size);
    }

    // Setup the FFT plan
    plan = fftw_plan_dft(4, (int[]){nx, ny, nz, nw}, complex_data, complex_data, FFTW_FORWARD, FFTW_ESTIMATE);

    // Start time
    start = clock();
    
    // Execute the FFT
    fftw_execute(plan);

    // End time
    stop = clock();

    // Print output stuff
    if (PRINT_FLAG) {
        printf("Fourier Coefficients...\n");
        printf_fftw_cmplx_array(complex_data, element_size);
    }

    // Compute elapsed time
    elapsed_time = (double)(stop - start) / CLOCKS_PER_SEC;

    // Clean up
    fftw_destroy_plan(plan);
    fftw_free(complex_data);
    fftw_cleanup();

    return elapsed_time;
}


int main(int argc, char **argv) {
    if (argc != 6) {
        printf("Error: This program requires exactly 5 command-line arguments.\n");
        printf("       %s <arg0> <arg1> <arg2> <arg3> <arg4>\n", argv[0]);
        printf("       arg0, arg1, arg2, arg3: FFT lengths in 4D\n");
        printf("       arg4: Number of iterations\n");
        printf("       e.g.: %s 64 64 64 64 5\n", argv[0]);
        return -1;
    }

    unsigned int nx = atoi(argv[1]);
    unsigned int ny = atoi(argv[2]);
    unsigned int nz = atoi(argv[3]);
    unsigned int nw = atoi(argv[4]);
    unsigned int niter = atoi(argv[5]);

    float sum = 0.0;
    float span_s = 0.0;
    for (unsigned int i = 0; i < niter; ++i) {
        span_s = run_test_fftw_4d(nx, ny, nz, nw);
        if (PRINT_FLAG) printf("[%d]: %.6f s\n", i, span_s);
        sum += span_s;
    }
    printf("%.6f\n", sum/(float)niter);

    return 0;
}

Implementação errônea do cuFFT4D

#include <stdio.h>
#include <stdlib.h>
#include <cuda_runtime.h> 
#include <cufft.h>
#include <math.h>

#define PRINT_FLAG 1
#define NPRINTS 5  // print size

#define CHECK_CUDA(call)                                                       \
{                                                                              \
    const cudaError_t error = call;                                            \
    if (error != cudaSuccess)                                                  \
    {                                                                          \
        fprintf(stderr, "Error: %s:%d, ", __FILE__, __LINE__);                 \
        fprintf(stderr, "code: %d, reason: %s\n", error,                       \
                cudaGetErrorString(error));                                    \
        exit(EXIT_FAILURE);                                                    \
    }                                                                          \
}

#define CHECK_CUFFT(call)                                                      \
{                                                                              \
    cufftResult error;                                                         \
    if ( (error = (call)) != CUFFT_SUCCESS)                                      \
    {                                                                          \
        fprintf(stderr, "Got CUFFT error %d at %s:%d\n", error, __FILE__,      \
                __LINE__);                                                     \
        exit(EXIT_FAILURE);                                                    \
    }                                                                          \
}

void printf_cufft_cmplx_array(cufftComplex *complex_array, unsigned int size) {
    for (unsigned int i = 0; i < NPRINTS; ++i) {
        printf("  (%2.4f, %2.4fi)\n", complex_array[i].x, complex_array[i].y);
    }
    printf("...\n");
    for (unsigned int i = size - NPRINTS; i < size; ++i) {
        printf("  (%2.4f, %2.4fi)\n", complex_array[i].x, complex_array[i].y);
    }
}

float run_test_cufft_4d_4x1d(unsigned int nx, unsigned int ny, unsigned int nz, unsigned int nw) {
    srand(2025);

    // Declaration
    cufftComplex *complex_data;
    cufftComplex *d_complex_data;
    cufftHandle plan1d_x, plan1d_y, plan1d_z, plan1d_w;

    unsigned int element_size = nx * ny * nz * nw;
    size_t size = sizeof(cufftComplex) * element_size;

    cudaEvent_t start, stop;
    float elapsed_time;

    // Allocate memory for the variables on the host
    complex_data = (cufftComplex *)malloc(size);

    // Initialize input complex signal
    for (unsigned int i = 0; i < element_size; ++i) {
        complex_data[i].x = rand() / (float)RAND_MAX;
        complex_data[i].y = 0;
    }

    // Print input stuff
    if (PRINT_FLAG) {
        printf("Complex data...\n");
        printf_cufft_cmplx_array(complex_data, element_size);
    }

    // Create CUDA events
    CHECK_CUDA(cudaEventCreate(&start));
    CHECK_CUDA(cudaEventCreate(&stop));

    // Allocate device memory for complex signal and output frequency
    CHECK_CUDA(cudaMalloc((void **)&d_complex_data, size));

    int n[1] = { (int)nx };
    int embed[1] = { (int)nx };
    CHECK_CUFFT(cufftPlanMany(&plan1d_x, 1, n,       // 1D FFT of size nx
                            embed, ny * nz * nw, 1, // inembed, istride, idist
                            embed, ny * nz * nw, 1, // onembed, ostride, odist
                            CUFFT_C2C, ny * nz * nw));
    n[0] = (int)ny;
    embed[0] = (int)ny;
    CHECK_CUFFT(cufftPlanMany(&plan1d_y, 1, n,       // 1D FFT of size ny
                            embed, nz * nw, 1, // inembed, istride, idist
                            embed, nz * nw, 1, // onembed, ostride, odist
                            CUFFT_C2C, nx * nz * nw));
    n[0] = (int)nz;
    embed[0] = (int)nz;
    CHECK_CUFFT(cufftPlanMany(&plan1d_z, 1, n,       // 1D FFT of size nz
                            embed, nw, 1, // inembed, istride, idist
                            embed, nw, 1, // onembed, ostride, odist
                            CUFFT_C2C, nx * ny * nw));
    n[0] = (int)nw;
    embed[0] = (int)nw;
    CHECK_CUFFT(cufftPlanMany(&plan1d_w, 1, n,       // 1D FFT of size nw
                            embed, 1, nw, // inembed, istride, idist
                            embed, 1, nw, // onembed, ostride, odist
                            CUFFT_C2C, nx * ny * nz));

    // Record the start event
    CHECK_CUDA(cudaEventRecord(start, 0));

    // Copy host memory to device
    CHECK_CUDA(cudaMemcpy(d_complex_data, complex_data, size, cudaMemcpyHostToDevice));

    // Perform FFT along each dimension sequentially
    CHECK_CUFFT(cufftExecC2C(plan1d_x, d_complex_data, d_complex_data, CUFFT_FORWARD));
    CHECK_CUFFT(cufftDestroy(plan1d_x));
    CHECK_CUFFT(cufftExecC2C(plan1d_y, d_complex_data, d_complex_data, CUFFT_FORWARD));
    CHECK_CUFFT(cufftDestroy(plan1d_y));
    CHECK_CUFFT(cufftExecC2C(plan1d_z, d_complex_data, d_complex_data, CUFFT_FORWARD));
    CHECK_CUFFT(cufftDestroy(plan1d_z));
    CHECK_CUFFT(cufftExecC2C(plan1d_w, d_complex_data, d_complex_data, CUFFT_FORWARD));
    CHECK_CUFFT(cufftDestroy(plan1d_w));

    // Retrieve the results into host memory
    CHECK_CUDA(cudaMemcpy(complex_data, d_complex_data, size, cudaMemcpyDeviceToHost));

    // Record the stop event
    CHECK_CUDA(cudaEventRecord(stop, 0));
    CHECK_CUDA(cudaEventSynchronize(stop));

    // Print output stuff
    if (PRINT_FLAG) {
        printf("Fourier Coefficients...\n");
        printf_cufft_cmplx_array(complex_data, element_size);
    }

    // Compute elapsed time
    CHECK_CUDA(cudaEventElapsedTime(&elapsed_time, start, stop));

    // Clean up
    CHECK_CUDA(cudaFree(d_complex_data));
    CHECK_CUDA(cudaEventDestroy(start));
    CHECK_CUDA(cudaEventDestroy(stop));
    free(complex_data);

    return elapsed_time * 1e-3;
}


int main(int argc, char **argv) {
    if (argc != 6) {
        printf("Error: This program requires exactly 5 command-line arguments.\n");
        printf("       %s <arg0> <arg1> <arg2> <arg3> <arg4>\n", argv[0]);
        printf("       arg0, arg1, arg2, arg3: FFT lengths in 4D\n");
        printf("       arg4: Number of iterations\n");
        printf("       e.g.: %s 64 64 64 64 5\n", argv[0]);
        return -1;
    }

    unsigned int nx = atoi(argv[1]);
    unsigned int ny = atoi(argv[2]);
    unsigned int nz = atoi(argv[3]);
    unsigned int nw = atoi(argv[4]);
    unsigned int niter = atoi(argv[5]);

    float sum = 0.0;
    float span_s = 0.0;
    for (unsigned int i = 0; i < niter; ++i) {
        span_s = run_test_cufft_4d_4x1d(nx, ny, nz, nw);
        if (PRINT_FLAG) printf("[%d]: %.6f s\n", i, span_s);
        sum += span_s;
    }
    printf("%.6f\n", sum/(float)niter);

    CHECK_CUDA(cudaDeviceReset());
    return 0;
}

Experimente ambas as implementações para um array 4x4x4x4 e você notará que apenas os primeiros coeficientes correspondem. Sei que a implementação FFTW produz o resultado correto, pois posso obter o mesmo resultado de diferentes maneiras, como uma FFT 3D seguida por uma FFT 1D ou 2 FFTs 2D usando as bibliotecas FFTW e cuFFT.

cuda
  • 1 respostas
  • 67 Views
Martin Hope
user2769514
Asked: 2025-04-15 09:05:33 +0800 CST

Como atualizar dados do Laravel Eloquent, calculando uma diferença de data

  • 5

Estou com esse problema. Preciso atualizar todos os dados de uma tabela sempre que o lote de entrada termina de ser inserido.

O que preciso fazer é: os dados recebidos têm CreationDate, então preciso fazer uma DIFF com a data atual e calcular o grupo. De 1 a 7 a cada 30 dias.

Por exemplo, se a diferença de datas for de 45 dias... isso pertence ao grupo 2.

Eu sei que poderia usar um laço foreach. Mas minha pergunta é: existe alguma outra opção para otimizar essa tarefa?

talvez com o mutador laravel ou um escopo?

Eu tentei adicionar isso na parte de inserção

    $group = intval((Carbon::now()->diffInDays($CreatedDate) ?? 1) / 30) + 1;

que funciona!. Mas preciso fazer isso também para todos os dados anteriores, que são muitos.

  • 1 respostas
  • 49 Views
Martin Hope
autumnweaver218
Asked: 2025-04-15 08:38:48 +0800 CST

Problema de correspondência de tipo ao tentar adicionar linhas usando SQLAlchemy com driver 'sqlite'

  • 5

Tenho um exemplo simples de um livro sobre o uso do SQLAlchemy no 1º nível, que é próximo ao DB-API. Desde o lançamento deste livro, sua sintaxe mudou e preciso modificar o código para que funcione. Estou com um problema ao inserir uma linha em uma tabela usando marcadores posicionais em uma string pré-escrita. Aqui está o código:

import sqlalchemy as sa
from sqlalchemy import text

engine = sa.create_engine('sqlite://')

with engine.connect() as conn:

    print (conn)
    conn.execute(text('''CREATE TABLE zoo (
                 critter VARCHAR(20) PRIMARY KEY,
                 count INT,
                 damage FLOAT)'''))

    ins = text('INSERT INTO zoo (critter, count, damage) VALUES (?,?,?)')
    conn.execute (ins, [('bear', 2, 1000.0)])
    conn.execute (ins, [('weasel', 1, 2000.0)])

    rows = conn.execute('SELECT * FROM zoo')
    for row in rows:
       print (row)

por algum motivo, isso levanta a questão:

'<' não suportado entre instâncias de 'int' e 'str'

...embora eu não esteja correspondendo a nada e a ordem dos valores pareça estar correta (para as colunas correspondentes). Por favor, ajude-me a entender o que está errado aqui?

python
  • 1 respostas
  • 57 Views
Martin Hope
harmstyler
Asked: 2025-04-15 07:33:33 +0800 CST

Carregar vários domínios no ActiveMQ com jaasAuthenticationPlugin

  • 5

Estou usando o ActiveMQ Classic e carrego usuários dinamicamente por meio de um serviço que atualiza o users.propertiesarquivo na minha instalação do ActiveMQ. Utilizo o comando org.apache.activemq.jaas.PropertiesLoginModulewith reload=truepara esse propósito.

Gostaria de adicionar uma lista separada de usuários agora. Não consigo encontrar nenhuma documentação sobre como carregar vários domínios.

Meu login.config:

users {
    org.apache.activemq.jaas.PropertiesLoginModule required
        debug=True
        org.apache.activemq.jaas.properties.user="users.properties"
        org.apache.activemq.jaas.properties.group="groups.properties"
        reload=true;
};
admins {
    org.apache.activemq.jaas.PropertiesLoginModule required
        debug=True
        org.apache.activemq.jaas.properties.user="admins.properties"
        org.apache.activemq.jaas.properties.group="admin_groups.properties";
};

No meu activemq.xml, como deve jaasAuthenticationPluginser a minha aparência?

activemq-classic
  • 1 respostas
  • 25 Views
Martin Hope
Chris Duke
Asked: 2025-04-15 07:28:26 +0800 CST

O NestJS pode implementar um endpoint com um prefixo $ (cifrão)?

  • 6

Tentando implementar um endpoint no NestJS 10 que esteja em conformidade com https://www.hl7.org/fhir/R4/operationslist.html e forneça uma operação por meio de um padrão do tipo $.

Tentei usar:


@Controller({
  path: '$export',
  version: '1',
})

ou

@GET('$export')

Ambos retornam uma exceção 404 NotFoundException

Eu o transcrevi para um controlador básico e executei GET, mas ainda diz que não está lá. Olhei a documentação do Swagger e ele está lá corretamente, mas quando executo a consulta de lá, ele diz que não foi encontrado. Alguma ideia de como implementar esse padrão?

node.js
  • 1 respostas
  • 51 Views
Martin Hope
Ashia Richardson-Bailey
Asked: 2025-04-15 07:01:32 +0800 CST

Não é possível animar o Sprite no Ren'Py

  • 7

Não consigo fazer com que as imagens de um sprite mudem no Ren'Py.

Todas as imagens que eu pretendia adicionar estão no diretório, e escrevi o código exatamente como descrito no tutorial, mas ele não muda nada. Eu sei que as imagens funcionam, pois quando eu altero a imagem no comando show, ela aparece. Acho que tem a ver com o comando show ter apenas uma imagem, ou as imagens não fazerem parte do sprite, mas não sei.

 show enidtest talk1
    
    image etest:
        "enidtest talk1"
        pause .5
        "enidtest talk2"
        pause .5
        repeat
python
  • 1 respostas
  • 51 Views
Martin Hope
Adr4m
Asked: 2025-04-15 07:01:28 +0800 CST

Configuração de geração de código jOOQ configurada incorretamente ao executar jooq-codegen-maven na linha de comando

  • 8

Estou com dificuldades para gerar classes jooq. Utilizo o jooq 3.20.3, com maven e um banco de dados rodando em segundo plano.

Minha configuração é a seguinte:

<build>
    <plugins>
        <plugin>
            <groupId>org.jooq</groupId>
            <artifactId>jooq-codegen-maven</artifactId>
            <version>${jooq.version}</version>
            <executions>
                <execution>
                    <id>jooq-codegen</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                    <configuration>
                        <jdbc>
                            <driver>org.postgresql.Driver</driver>
                            <url>jdbc:postgresql://localhost:5432/my_db</url>
                            <user>my_user</user>
                            <password>my_password</password>
                        </jdbc>
                        <generator>
                            <database>
                                <name>org.jooq.meta.postgres.PostgresDatabase</name>
                            </database>

                            <target>
                                <packageName>com.example.domain</packageName>
                                <directory>src/main/java_generated</directory>
                            </target>
                        </generator>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

Não tenho certeza do que é obrigatório e do que é opcional. Além disso, usei a configuração do jooq fornecida em "Introdução". É claro que os valores de my_dbe assim por diante são os do meu banco de dados (mais tarde usarei variáveis ​​de ambiente de algo).

Mas toda vez que executo mvn jooq-codegen:generateaparece o seguinte erro:

[ERROR] Incorrect configuration of jOOQ code generation tool
[ERROR] 
The jOOQ-codegen-maven module's generator configuration is not set up correctly.
This can have a variety of reasons, among which:
- Your pom.xml's <configuration> contains invalid XML according to jooq-codegen-3.20.1.xsd
- There is a version or artifact mismatch between your pom.xml and your commandline

Mas não encontro o erro

spring
  • 1 respostas
  • 127 Views
Martin Hope
Hoa
Asked: 2025-04-15 06:47:46 +0800 CST

O Express não consegue obter o valor da textarea

  • 5

Tenho o seguinte formulário que permite ao usuário editar seu conteúdo. O formulário possui duas tags de entrada e uma textareatag.

Eu esperava que o Express retornasse o valor da entrada e textarea, mas o textareaestava vazio, deixando apenas o inputvalor da tag para retornar.

Tentei trocar a textareatag por inpute funcionou, mas como a inputtag é uma tag de texto de linha única, quero uma tag de texto de várias linhas para lidar com parágrafos longos do usuário.

Aqui está meu código:

app.post("/editBlog", (req, res) => {
  // console.log(`Edit blog at index: ${editBlogIndex}`);
  const blogToEdit = posts[editBlogIndex];
  // console.log(blogToEdit);
  blogToEdit.fname = req.body["fullname"];
  blogToEdit.title = req.body["title"];
  blogToEdit.blogContent = req.body["content"];
  res.render("edit-blog.ejs", {
    posts: posts
  });
})

Aqui está o código do arquivo expresso:

<form action="/editBlog" method="post">
  <div class="form-group">
    <label for="fullname">名前:</label>
    <input type="text" id="fullname" name="fullname" placeholder="フルネーム" value="<%= blogEdit.fname %>"><br>
  </div>
  <div class="form-group">
    <label for="title">タイトル:</label>
    <input type="text" id="title" name="title" placeholder="投稿タイトル" value="<%= blogEdit.title %>"><br>
  </div>
  <div class="form-group">
    <label for="content">内容:</label>
    <textarea id="content" name="content" placeholder="投稿内容" value="<%= blogEdit.blogContent %>" style="height:200px"></textarea>
  </div>
  <div class="d-grid gap-2 col-6 mx-auto">
    <button type="submit" class="btn btn-primary">Submit</button>
  </div>
</form>

Como faço para obter o retorno expresso do valor da textareatag?

html
  • 1 respostas
  • 44 Views
Prev
Próximo

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Reformatar números, inserindo separadores em posições fixas

    • 6 respostas
  • Marko Smith

    Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não?

    • 2 respostas
  • Marko Smith

    Problema com extensão desinstalada automaticamente do VScode (tema Material)

    • 2 respostas
  • Marko Smith

    Vue 3: Erro na criação "Identificador esperado, mas encontrado 'import'" [duplicado]

    • 1 respostas
  • Marko Smith

    Qual é o propósito de `enum class` com um tipo subjacente especificado, mas sem enumeradores?

    • 1 respostas
  • Marko Smith

    Como faço para corrigir um erro MODULE_NOT_FOUND para um módulo que não importei manualmente?

    • 6 respostas
  • Marko Smith

    `(expression, lvalue) = rvalue` é uma atribuição válida em C ou C++? Por que alguns compiladores aceitam/rejeitam isso?

    • 3 respostas
  • Marko Smith

    Um programa vazio que não faz nada em C++ precisa de um heap de 204 KB, mas não em C

    • 1 respostas
  • Marko Smith

    PowerBI atualmente quebrado com BigQuery: problema de driver Simba com atualização do Windows

    • 2 respostas
  • Marko Smith

    AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos

    • 1 respostas
  • Martin Hope
    Fantastic Mr Fox Somente o tipo copiável não é aceito na implementação std::vector do MSVC 2025-04-23 06:40:49 +0800 CST
  • Martin Hope
    Howard Hinnant Encontre o próximo dia da semana usando o cronógrafo 2025-04-21 08:30:25 +0800 CST
  • Martin Hope
    Fedor O inicializador de membro do construtor pode incluir a inicialização de outro membro? 2025-04-15 01:01:44 +0800 CST
  • Martin Hope
    Petr Filipský Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não? 2025-03-23 21:39:40 +0800 CST
  • Martin Hope
    Catskul O C++20 mudou para permitir a conversão de `type(&)[N]` de matriz de limites conhecidos para `type(&)[]` de matriz de limites desconhecidos? 2025-03-04 06:57:53 +0800 CST
  • Martin Hope
    Stefan Pochmann Como/por que {2,3,10} e {x,3,10} com x=2 são ordenados de forma diferente? 2025-01-13 23:24:07 +0800 CST
  • Martin Hope
    Chad Feller O ponto e vírgula agora é opcional em condicionais bash com [[ .. ]] na versão 5.2? 2024-10-21 05:50:33 +0800 CST
  • Martin Hope
    Wrench Por que um traço duplo (--) faz com que esta cláusula MariaDB seja avaliada como verdadeira? 2024-05-05 13:37:20 +0800 CST
  • Martin Hope
    Waket Zheng Por que `dict(id=1, **{'id': 2})` às vezes gera `KeyError: 'id'` em vez de um TypeError? 2024-05-04 14:19:19 +0800 CST
  • Martin Hope
    user924 AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos 2024-03-20 03:12:31 +0800 CST

Hot tag

python javascript c++ c# java typescript sql reactjs html

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve